-- SPDX-License-Identifier: MIT
-- Copyright (C) 2018-present iced project and contributors

-- ⚠️This file was generated by GENERATOR!🦹‍♂️

---Size of a memory reference
return {
	---Unknown size or the instruction doesn't reference any memory (eg. `LEA`)
	Unknown = 0,
	---Memory location contains a `u8`
	UInt8 = 1,
	---Memory location contains a `u16`
	UInt16 = 2,
	---Memory location contains a `u32`
	UInt32 = 3,
	---Memory location contains a `u52`
	UInt52 = 4,
	---Memory location contains a `u64`
	UInt64 = 5,
	---Memory location contains a `u128`
	UInt128 = 6,
	---Memory location contains a `u256`
	UInt256 = 7,
	---Memory location contains a `u512`
	UInt512 = 8,
	---Memory location contains a `i8`
	Int8 = 9,
	---Memory location contains a `i16`
	Int16 = 10,
	---Memory location contains a `i32`
	Int32 = 11,
	---Memory location contains a `i64`
	Int64 = 12,
	---Memory location contains a `i128`
	Int128 = 13,
	---Memory location contains a `i256`
	Int256 = 14,
	---Memory location contains a `i512`
	Int512 = 15,
	---Memory location contains a seg:ptr pair, `u16` (offset) + `u16` (segment/selector)
	SegPtr16 = 16,
	---Memory location contains a seg:ptr pair, `u32` (offset) + `u16` (segment/selector)
	SegPtr32 = 17,
	---Memory location contains a seg:ptr pair, `u64` (offset) + `u16` (segment/selector)
	SegPtr64 = 18,
	---Memory location contains a 16-bit offset (`JMP/CALL WORD PTR [mem]`)
	WordOffset = 19,
	---Memory location contains a 32-bit offset (`JMP/CALL DWORD PTR [mem]`)
	DwordOffset = 20,
	---Memory location contains a 64-bit offset (`JMP/CALL QWORD PTR [mem]`)
	QwordOffset = 21,
	---Memory location contains two `u16`s (16-bit `BOUND`)
	Bound16_WordWord = 22,
	---Memory location contains two `u32`s (32-bit `BOUND`)
	Bound32_DwordDword = 23,
	---32-bit `BNDMOV`, 2 x `u32`
	Bnd32 = 24,
	---64-bit `BNDMOV`, 2 x `u64`
	Bnd64 = 25,
	---Memory location contains a 16-bit limit and a 32-bit address (eg. `LGDTW`, `LGDTD`)
	Fword6 = 26,
	---Memory location contains a 16-bit limit and a 64-bit address (eg. `LGDTQ`)
	Fword10 = 27,
	---Memory location contains a `f16`
	Float16 = 28,
	---Memory location contains a `f32`
	Float32 = 29,
	---Memory location contains a `f64`
	Float64 = 30,
	---Memory location contains a `f80`
	Float80 = 31,
	---Memory location contains a `f128`
	Float128 = 32,
	---Memory location contains a `bfloat16`
	BFloat16 = 33,
	---Memory location contains a 14-byte FPU environment (16-bit `FLDENV`/`FSTENV`)
	FpuEnv14 = 34,
	---Memory location contains a 28-byte FPU environment (32/64-bit `FLDENV`/`FSTENV`)
	FpuEnv28 = 35,
	---Memory location contains a 94-byte FPU environment (16-bit `FSAVE`/`FRSTOR`)
	FpuState94 = 36,
	---Memory location contains a 108-byte FPU environment (32/64-bit `FSAVE`/`FRSTOR`)
	FpuState108 = 37,
	---Memory location contains 512-bytes of `FXSAVE`/`FXRSTOR` data
	Fxsave_512Byte = 38,
	---Memory location contains 512-bytes of `FXSAVE64`/`FXRSTOR64` data
	Fxsave64_512Byte = 39,
	---32-bit `XSAVE` area
	Xsave = 40,
	---64-bit `XSAVE` area
	Xsave64 = 41,
	---Memory location contains a 10-byte `bcd` value (`FBLD`/`FBSTP`)
	Bcd = 42,
	---64-bit location: TILECFG (`LDTILECFG`/`STTILECFG`)
	Tilecfg = 43,
	---Tile data
	Tile = 44,
	---80-bit segment descriptor and selector: 0-7 = descriptor, 8-9 = selector
	SegmentDescSelector = 45,
	---384-bit AES 128 handle (Key Locker)
	KLHandleAes128 = 46,
	---512-bit AES 256 handle (Key Locker)
	KLHandleAes256 = 47,
	---16-bit location: 2 x `u8`
	Packed16_UInt8 = 48,
	---16-bit location: 2 x `i8`
	Packed16_Int8 = 49,
	---32-bit location: 4 x `u8`
	Packed32_UInt8 = 50,
	---32-bit location: 4 x `i8`
	Packed32_Int8 = 51,
	---32-bit location: 2 x `u16`
	Packed32_UInt16 = 52,
	---32-bit location: 2 x `i16`
	Packed32_Int16 = 53,
	---32-bit location: 2 x `f16`
	Packed32_Float16 = 54,
	---32-bit location: 2 x `bfloat16`
	Packed32_BFloat16 = 55,
	---64-bit location: 8 x `u8`
	Packed64_UInt8 = 56,
	---64-bit location: 8 x `i8`
	Packed64_Int8 = 57,
	---64-bit location: 4 x `u16`
	Packed64_UInt16 = 58,
	---64-bit location: 4 x `i16`
	Packed64_Int16 = 59,
	---64-bit location: 2 x `u32`
	Packed64_UInt32 = 60,
	---64-bit location: 2 x `i32`
	Packed64_Int32 = 61,
	---64-bit location: 4 x `f16`
	Packed64_Float16 = 62,
	---64-bit location: 2 x `f32`
	Packed64_Float32 = 63,
	---128-bit location: 16 x `u8`
	Packed128_UInt8 = 64,
	---128-bit location: 16 x `i8`
	Packed128_Int8 = 65,
	---128-bit location: 8 x `u16`
	Packed128_UInt16 = 66,
	---128-bit location: 8 x `i16`
	Packed128_Int16 = 67,
	---128-bit location: 4 x `u32`
	Packed128_UInt32 = 68,
	---128-bit location: 4 x `i32`
	Packed128_Int32 = 69,
	---128-bit location: 2 x `u52`
	Packed128_UInt52 = 70,
	---128-bit location: 2 x `u64`
	Packed128_UInt64 = 71,
	---128-bit location: 2 x `i64`
	Packed128_Int64 = 72,
	---128-bit location: 8 x `f16`
	Packed128_Float16 = 73,
	---128-bit location: 4 x `f32`
	Packed128_Float32 = 74,
	---128-bit location: 2 x `f64`
	Packed128_Float64 = 75,
	---128-bit location: 8 x `bfloat16`
	Packed128_BFloat16 = 76,
	---128-bit location: 4 x (2 x `f16`)
	Packed128_2xFloat16 = 77,
	---128-bit location: 4 x (2 x `bfloat16`)
	Packed128_2xBFloat16 = 78,
	---256-bit location: 32 x `u8`
	Packed256_UInt8 = 79,
	---256-bit location: 32 x `i8`
	Packed256_Int8 = 80,
	---256-bit location: 16 x `u16`
	Packed256_UInt16 = 81,
	---256-bit location: 16 x `i16`
	Packed256_Int16 = 82,
	---256-bit location: 8 x `u32`
	Packed256_UInt32 = 83,
	---256-bit location: 8 x `i32`
	Packed256_Int32 = 84,
	---256-bit location: 4 x `u52`
	Packed256_UInt52 = 85,
	---256-bit location: 4 x `u64`
	Packed256_UInt64 = 86,
	---256-bit location: 4 x `i64`
	Packed256_Int64 = 87,
	---256-bit location: 2 x `u128`
	Packed256_UInt128 = 88,
	---256-bit location: 2 x `i128`
	Packed256_Int128 = 89,
	---256-bit location: 16 x `f16`
	Packed256_Float16 = 90,
	---256-bit location: 8 x `f32`
	Packed256_Float32 = 91,
	---256-bit location: 4 x `f64`
	Packed256_Float64 = 92,
	---256-bit location: 2 x `f128`
	Packed256_Float128 = 93,
	---256-bit location: 16 x `bfloat16`
	Packed256_BFloat16 = 94,
	---256-bit location: 8 x (2 x `f16`)
	Packed256_2xFloat16 = 95,
	---256-bit location: 8 x (2 x `bfloat16`)
	Packed256_2xBFloat16 = 96,
	---512-bit location: 64 x `u8`
	Packed512_UInt8 = 97,
	---512-bit location: 64 x `i8`
	Packed512_Int8 = 98,
	---512-bit location: 32 x `u16`
	Packed512_UInt16 = 99,
	---512-bit location: 32 x `i16`
	Packed512_Int16 = 100,
	---512-bit location: 16 x `u32`
	Packed512_UInt32 = 101,
	---512-bit location: 16 x `i32`
	Packed512_Int32 = 102,
	---512-bit location: 8 x `u52`
	Packed512_UInt52 = 103,
	---512-bit location: 8 x `u64`
	Packed512_UInt64 = 104,
	---512-bit location: 8 x `i64`
	Packed512_Int64 = 105,
	---256-bit location: 4 x `u128`
	Packed512_UInt128 = 106,
	---512-bit location: 32 x `f16`
	Packed512_Float16 = 107,
	---512-bit location: 16 x `f32`
	Packed512_Float32 = 108,
	---512-bit location: 8 x `f64`
	Packed512_Float64 = 109,
	---512-bit location: 16 x (2 x `f16`)
	Packed512_2xFloat16 = 110,
	---512-bit location: 16 x (2 x `bfloat16`)
	Packed512_2xBFloat16 = 111,
	---Broadcast `f16` to 32-bits
	Broadcast32_Float16 = 112,
	---Broadcast `u32` to 64-bits
	Broadcast64_UInt32 = 113,
	---Broadcast `i32` to 64-bits
	Broadcast64_Int32 = 114,
	---Broadcast `f16` to 64-bits
	Broadcast64_Float16 = 115,
	---Broadcast `f32` to 64-bits
	Broadcast64_Float32 = 116,
	---Broadcast `i16` to 128-bits
	Broadcast128_Int16 = 117,
	---Broadcast `u16` to 128-bits
	Broadcast128_UInt16 = 118,
	---Broadcast `u32` to 128-bits
	Broadcast128_UInt32 = 119,
	---Broadcast `i32` to 128-bits
	Broadcast128_Int32 = 120,
	---Broadcast `u52` to 128-bits
	Broadcast128_UInt52 = 121,
	---Broadcast `u64` to 128-bits
	Broadcast128_UInt64 = 122,
	---Broadcast `i64` to 128-bits
	Broadcast128_Int64 = 123,
	---Broadcast `f16` to 128-bits
	Broadcast128_Float16 = 124,
	---Broadcast `f32` to 128-bits
	Broadcast128_Float32 = 125,
	---Broadcast `f64` to 128-bits
	Broadcast128_Float64 = 126,
	---Broadcast 2 x `i16` to 128-bits
	Broadcast128_2xInt16 = 127,
	---Broadcast 2 x `i32` to 128-bits
	Broadcast128_2xInt32 = 128,
	---Broadcast 2 x `u32` to 128-bits
	Broadcast128_2xUInt32 = 129,
	---Broadcast 2 x `f16` to 128-bits
	Broadcast128_2xFloat16 = 130,
	---Broadcast 2 x `bfloat16` to 128-bits
	Broadcast128_2xBFloat16 = 131,
	---Broadcast `i16` to 256-bits
	Broadcast256_Int16 = 132,
	---Broadcast `u16` to 256-bits
	Broadcast256_UInt16 = 133,
	---Broadcast `u32` to 256-bits
	Broadcast256_UInt32 = 134,
	---Broadcast `i32` to 256-bits
	Broadcast256_Int32 = 135,
	---Broadcast `u52` to 256-bits
	Broadcast256_UInt52 = 136,
	---Broadcast `u64` to 256-bits
	Broadcast256_UInt64 = 137,
	---Broadcast `i64` to 256-bits
	Broadcast256_Int64 = 138,
	---Broadcast `f16` to 256-bits
	Broadcast256_Float16 = 139,
	---Broadcast `f32` to 256-bits
	Broadcast256_Float32 = 140,
	---Broadcast `f64` to 256-bits
	Broadcast256_Float64 = 141,
	---Broadcast 2 x `i16` to 256-bits
	Broadcast256_2xInt16 = 142,
	---Broadcast 2 x `i32` to 256-bits
	Broadcast256_2xInt32 = 143,
	---Broadcast 2 x `u32` to 256-bits
	Broadcast256_2xUInt32 = 144,
	---Broadcast 2 x `f16` to 256-bits
	Broadcast256_2xFloat16 = 145,
	---Broadcast 2 x `bfloat16` to 256-bits
	Broadcast256_2xBFloat16 = 146,
	---Broadcast `i16` to 512-bits
	Broadcast512_Int16 = 147,
	---Broadcast `u16` to 512-bits
	Broadcast512_UInt16 = 148,
	---Broadcast `u32` to 512-bits
	Broadcast512_UInt32 = 149,
	---Broadcast `i32` to 512-bits
	Broadcast512_Int32 = 150,
	---Broadcast `u52` to 512-bits
	Broadcast512_UInt52 = 151,
	---Broadcast `u64` to 512-bits
	Broadcast512_UInt64 = 152,
	---Broadcast `i64` to 512-bits
	Broadcast512_Int64 = 153,
	---Broadcast `f16` to 512-bits
	Broadcast512_Float16 = 154,
	---Broadcast `f32` to 512-bits
	Broadcast512_Float32 = 155,
	---Broadcast `f64` to 512-bits
	Broadcast512_Float64 = 156,
	---Broadcast 2 x `f16` to 512-bits
	Broadcast512_2xFloat16 = 157,
	---Broadcast 2 x `i16` to 512-bits
	Broadcast512_2xInt16 = 158,
	---Broadcast 2 x `u32` to 512-bits
	Broadcast512_2xUInt32 = 159,
	---Broadcast 2 x `i32` to 512-bits
	Broadcast512_2xInt32 = 160,
	---Broadcast 2 x `bfloat16` to 512-bits
	Broadcast512_2xBFloat16 = 161,
}
