Skip to content

Commit d8322f6

Browse files
committed
Adding generic i160 support.
1 parent 5731dc7 commit d8322f6

File tree

7 files changed

+315
-293
lines changed

7 files changed

+315
-293
lines changed

include/llvm/CodeGen/ValueTypes.td

Lines changed: 142 additions & 140 deletions
Original file line numberDiff line numberDiff line change
@@ -25,146 +25,148 @@ def i16 : ValueType<16 , 4>; // 16-bit integer value
2525
def i32 : ValueType<32 , 5>; // 32-bit integer value
2626
def i64 : ValueType<64 , 6>; // 64-bit integer value
2727
def i128 : ValueType<128, 7>; // 128-bit integer value
28-
def i256 : ValueType<256, 8>; // 256-bit integer value
29-
def f16 : ValueType<16 , 9>; // 16-bit floating point value
30-
def f32 : ValueType<32 , 10>; // 32-bit floating point value
31-
def f64 : ValueType<64 , 11>; // 64-bit floating point value
32-
def f80 : ValueType<80 , 12>; // 80-bit floating point value
33-
def f128 : ValueType<128, 13>; // 128-bit floating point value
34-
def ppcf128: ValueType<128, 14>; // PPC 128-bit floating point value
35-
36-
def v1i1 : ValueType<1 , 15>; // 1 x i1 vector value
37-
def v2i1 : ValueType<2 , 16>; // 2 x i1 vector value
38-
def v4i1 : ValueType<4 , 17>; // 4 x i1 vector value
39-
def v8i1 : ValueType<8 , 18>; // 8 x i1 vector value
40-
def v16i1 : ValueType<16, 19>; // 16 x i1 vector value
41-
def v32i1 : ValueType<32 , 20>; // 32 x i1 vector value
42-
def v64i1 : ValueType<64 , 21>; // 64 x i1 vector value
43-
def v128i1 : ValueType<128, 22>; // 128 x i1 vector value
44-
def v512i1 : ValueType<512, 23>; // 512 x i1 vector value
45-
def v1024i1: ValueType<1024,24>; //1024 x i1 vector value
46-
47-
def v1i8 : ValueType<8, 25>; // 1 x i8 vector value
48-
def v2i8 : ValueType<16 , 26>; // 2 x i8 vector value
49-
def v4i8 : ValueType<32 , 27>; // 4 x i8 vector value
50-
def v8i8 : ValueType<64 , 28>; // 8 x i8 vector value
51-
def v16i8 : ValueType<128, 29>; // 16 x i8 vector value
52-
def v32i8 : ValueType<256, 30>; // 32 x i8 vector value
53-
def v64i8 : ValueType<512, 31>; // 64 x i8 vector value
54-
def v128i8 : ValueType<1024,32>; //128 x i8 vector value
55-
def v256i8 : ValueType<2048,33>; //256 x i8 vector value
56-
57-
def v1i16 : ValueType<16 , 34>; // 1 x i16 vector value
58-
def v2i16 : ValueType<32 , 35>; // 2 x i16 vector value
59-
def v4i16 : ValueType<64 , 36>; // 4 x i16 vector value
60-
def v8i16 : ValueType<128, 37>; // 8 x i16 vector value
61-
def v16i16 : ValueType<256, 38>; // 16 x i16 vector value
62-
def v32i16 : ValueType<512, 39>; // 32 x i16 vector value
63-
def v64i16 : ValueType<1024,40>; // 64 x i16 vector value
64-
def v128i16: ValueType<2048,41>; //128 x i16 vector value
65-
66-
def v1i32 : ValueType<32 , 42>; // 1 x i32 vector value
67-
def v2i32 : ValueType<64 , 43>; // 2 x i32 vector value
68-
def v3i32 : ValueType<96 , 44>; // 3 x i32 vector value
69-
def v4i32 : ValueType<128, 45>; // 4 x i32 vector value
70-
def v5i32 : ValueType<160, 46>; // 5 x i32 vector value
71-
def v8i32 : ValueType<256, 47>; // 8 x i32 vector value
72-
def v16i32 : ValueType<512, 48>; // 16 x i32 vector value
73-
def v32i32 : ValueType<1024,49>; // 32 x i32 vector value
74-
def v64i32 : ValueType<2048,50>; // 64 x i32 vector value
75-
def v128i32 : ValueType<4096,51>; // 128 x i32 vector value
76-
def v256i32 : ValueType<8182,52>; // 256 x i32 vector value
77-
def v512i32 : ValueType<16384,53>; // 512 x i32 vector value
78-
def v1024i32 : ValueType<32768,54>; // 1024 x i32 vector value
79-
def v2048i32 : ValueType<65536,55>; // 2048 x i32 vector value
80-
81-
def v1i64 : ValueType<64 , 56>; // 1 x i64 vector value
82-
def v2i64 : ValueType<128, 57>; // 2 x i64 vector value
83-
def v4i64 : ValueType<256, 58>; // 4 x i64 vector value
84-
def v8i64 : ValueType<512, 59>; // 8 x i64 vector value
85-
def v16i64 : ValueType<1024,60>; // 16 x i64 vector value
86-
def v32i64 : ValueType<2048,61>; // 32 x i64 vector value
87-
88-
def v1i128 : ValueType<128, 62>; // 1 x i128 vector value
89-
90-
def v2f16 : ValueType<32 , 63>; // 2 x f16 vector value
91-
def v3f16 : ValueType<48 , 64>; // 3 x f16 vector value
92-
def v4f16 : ValueType<64 , 65>; // 4 x f16 vector value
93-
def v8f16 : ValueType<128, 66>; // 8 x f16 vector value
94-
def v16f16 : ValueType<256, 67>; // 8 x f16 vector value
95-
def v32f16 : ValueType<512, 68>; // 8 x f16 vector value
96-
def v1f32 : ValueType<32 , 69>; // 1 x f32 vector value
97-
def v2f32 : ValueType<64 , 70>; // 2 x f32 vector value
98-
def v3f32 : ValueType<96 , 71>; // 3 x f32 vector value
99-
def v4f32 : ValueType<128, 72>; // 4 x f32 vector value
100-
def v5f32 : ValueType<160, 73>; // 5 x f32 vector value
101-
def v8f32 : ValueType<256, 74>; // 8 x f32 vector value
102-
def v16f32 : ValueType<512, 75>; // 16 x f32 vector value
103-
def v32f32 : ValueType<1024, 76>; // 32 x f32 vector value
104-
def v64f32 : ValueType<2048, 77>; // 64 x f32 vector value
105-
def v128f32 : ValueType<4096, 78>; // 128 x f32 vector value
106-
def v256f32 : ValueType<8182, 79>; // 256 x f32 vector value
107-
def v512f32 : ValueType<16384, 80>; // 512 x f32 vector value
108-
def v1024f32 : ValueType<32768, 81>; // 1024 x f32 vector value
109-
def v2048f32 : ValueType<65536, 82>; // 2048 x f32 vector value
110-
def v1f64 : ValueType<64, 83>; // 1 x f64 vector value
111-
def v2f64 : ValueType<128, 84>; // 2 x f64 vector value
112-
def v4f64 : ValueType<256, 85>; // 4 x f64 vector value
113-
def v8f64 : ValueType<512, 86>; // 8 x f64 vector value
114-
115-
def nxv1i1 : ValueType<1, 87>; // n x 1 x i1 vector value
116-
def nxv2i1 : ValueType<2, 88>; // n x 2 x i1 vector value
117-
def nxv4i1 : ValueType<4, 89>; // n x 4 x i1 vector value
118-
def nxv8i1 : ValueType<8, 90>; // n x 8 x i1 vector value
119-
def nxv16i1 : ValueType<16, 91>; // n x 16 x i1 vector value
120-
def nxv32i1 : ValueType<32, 92>; // n x 32 x i1 vector value
121-
122-
def nxv1i8 : ValueType<8, 93>; // n x 1 x i8 vector value
123-
def nxv2i8 : ValueType<16, 94>; // n x 2 x i8 vector value
124-
def nxv4i8 : ValueType<32, 95>; // n x 4 x i8 vector value
125-
def nxv8i8 : ValueType<64, 96>; // n x 8 x i8 vector value
126-
def nxv16i8 : ValueType<128, 97>; // n x 16 x i8 vector value
127-
def nxv32i8 : ValueType<256, 98>; // n x 32 x i8 vector value
128-
129-
def nxv1i16 : ValueType<16, 99>; // n x 1 x i16 vector value
130-
def nxv2i16 : ValueType<32, 100>; // n x 2 x i16 vector value
131-
def nxv4i16 : ValueType<64, 101>; // n x 4 x i16 vector value
132-
def nxv8i16 : ValueType<128, 102>; // n x 8 x i16 vector value
133-
def nxv16i16: ValueType<256, 103>; // n x 16 x i16 vector value
134-
def nxv32i16: ValueType<512, 104>; // n x 32 x i16 vector value
135-
136-
def nxv1i32 : ValueType<32, 105>; // n x 1 x i32 vector value
137-
def nxv2i32 : ValueType<64, 106>; // n x 2 x i32 vector value
138-
def nxv4i32 : ValueType<128, 107>; // n x 4 x i32 vector value
139-
def nxv8i32 : ValueType<256, 108>; // n x 8 x i32 vector value
140-
def nxv16i32: ValueType<512, 109>; // n x 16 x i32 vector value
141-
def nxv32i32: ValueType<1024,110>; // n x 32 x i32 vector value
142-
143-
def nxv1i64 : ValueType<64, 111>; // n x 1 x i64 vector value
144-
def nxv2i64 : ValueType<128, 112>; // n x 2 x i64 vector value
145-
def nxv4i64 : ValueType<256, 113>; // n x 4 x i64 vector value
146-
def nxv8i64 : ValueType<512, 114>; // n x 8 x i64 vector value
147-
def nxv16i64: ValueType<1024,115>; // n x 16 x i64 vector value
148-
def nxv32i64: ValueType<2048,116>; // n x 32 x i64 vector value
149-
150-
def nxv2f16 : ValueType<32 , 117>; // n x 2 x f16 vector value
151-
def nxv4f16 : ValueType<64 , 118>; // n x 4 x f16 vector value
152-
def nxv8f16 : ValueType<128, 119>; // n x 8 x f16 vector value
153-
def nxv1f32 : ValueType<32 , 120>; // n x 1 x f32 vector value
154-
def nxv2f32 : ValueType<64 , 121>; // n x 2 x f32 vector value
155-
def nxv4f32 : ValueType<128, 122>; // n x 4 x f32 vector value
156-
def nxv8f32 : ValueType<256, 123>; // n x 8 x f32 vector value
157-
def nxv16f32 : ValueType<512, 124>; // n x 16 x f32 vector value
158-
def nxv1f64 : ValueType<64, 125>; // n x 1 x f64 vector value
159-
def nxv2f64 : ValueType<128, 126>; // n x 2 x f64 vector value
160-
def nxv4f64 : ValueType<256, 127>; // n x 4 x f64 vector value
161-
def nxv8f64 : ValueType<512, 128>; // n x 8 x f64 vector value
162-
163-
def x86mmx : ValueType<64 , 129>; // X86 MMX value
164-
def FlagVT : ValueType<0 , 130>; // Pre-RA sched glue
165-
def isVoid : ValueType<0 , 131>; // Produces no value
166-
def untyped: ValueType<8 , 132>; // Produces an untyped value
167-
def exnref: ValueType<0, 133>; // WebAssembly's exnref type
28+
def i160 : ValueType<160, 8>; // 160-bit integer value
29+
def i256 : ValueType<256, 9>; // 256-bit integer value
30+
def f16 : ValueType<16 , 10>; // 16-bit floating point value
31+
def f32 : ValueType<32 , 11>; // 32-bit floating point value
32+
def f64 : ValueType<64 , 12>; // 64-bit floating point value
33+
def f80 : ValueType<80 , 13>; // 80-bit floating point value
34+
def f128 : ValueType<128, 14>; // 128-bit floating point value
35+
def ppcf128: ValueType<128, 15>; // PPC 128-bit floating point value
36+
37+
def v1i1 : ValueType<1 , 16>; // 1 x i1 vector value
38+
def v2i1 : ValueType<2 , 17>; // 2 x i1 vector value
39+
def v4i1 : ValueType<4 , 18>; // 4 x i1 vector value
40+
def v8i1 : ValueType<8 , 19>; // 8 x i1 vector value
41+
def v16i1 : ValueType<16, 20>; // 16 x i1 vector value
42+
def v32i1 : ValueType<32 , 21>; // 32 x i1 vector value
43+
def v64i1 : ValueType<64 , 22>; // 64 x i1 vector value
44+
def v128i1 : ValueType<128, 23>; // 128 x i1 vector value
45+
def v512i1 : ValueType<512, 24>; // 512 x i1 vector value
46+
def v1024i1: ValueType<1024,25>; //1024 x i1 vector value
47+
48+
def v1i8 : ValueType<8, 26>; // 1 x i8 vector value
49+
def v2i8 : ValueType<16 , 27>; // 2 x i8 vector value
50+
def v4i8 : ValueType<32 , 28>; // 4 x i8 vector value
51+
def v8i8 : ValueType<64 , 29>; // 8 x i8 vector value
52+
def v16i8 : ValueType<128, 30>; // 16 x i8 vector value
53+
def v32i8 : ValueType<256, 31>; // 32 x i8 vector value
54+
def v64i8 : ValueType<512, 32>; // 64 x i8 vector value
55+
def v128i8 : ValueType<1024,33>; //128 x i8 vector value
56+
def v256i8 : ValueType<2048,34>; //256 x i8 vector value
57+
58+
def v1i16 : ValueType<16 , 35>; // 1 x i16 vector value
59+
def v2i16 : ValueType<32 , 36>; // 2 x i16 vector value
60+
def v3i16 : ValueType<48 , 37>; // 3 x i16 vector value
61+
def v4i16 : ValueType<64 , 38>; // 4 x i16 vector value
62+
def v8i16 : ValueType<128, 39>; // 8 x i16 vector value
63+
def v16i16 : ValueType<256, 40>; // 16 x i16 vector value
64+
def v32i16 : ValueType<512, 41>; // 32 x i16 vector value
65+
def v64i16 : ValueType<1024,42>; // 64 x i16 vector value
66+
def v128i16: ValueType<2048,43>; //128 x i16 vector value
67+
68+
def v1i32 : ValueType<32 , 44>; // 1 x i32 vector value
69+
def v2i32 : ValueType<64 , 45>; // 2 x i32 vector value
70+
def v3i32 : ValueType<96 , 46>; // 3 x i32 vector value
71+
def v4i32 : ValueType<128, 47>; // 4 x i32 vector value
72+
def v5i32 : ValueType<160, 48>; // 5 x i32 vector value
73+
def v8i32 : ValueType<256, 49>; // 8 x i32 vector value
74+
def v16i32 : ValueType<512, 50>; // 16 x i32 vector value
75+
def v32i32 : ValueType<1024,51>; // 32 x i32 vector value
76+
def v64i32 : ValueType<2048,52>; // 64 x i32 vector value
77+
def v128i32 : ValueType<4096,53>; // 128 x i32 vector value
78+
def v256i32 : ValueType<8182,54>; // 256 x i32 vector value
79+
def v512i32 : ValueType<16384,55>; // 512 x i32 vector value
80+
def v1024i32 : ValueType<32768,56>; // 1024 x i32 vector value
81+
def v2048i32 : ValueType<65536,57>; // 2048 x i32 vector value
82+
83+
def v1i64 : ValueType<64 , 58>; // 1 x i64 vector value
84+
def v2i64 : ValueType<128, 59>; // 2 x i64 vector value
85+
def v4i64 : ValueType<256, 60>; // 4 x i64 vector value
86+
def v8i64 : ValueType<512, 61>; // 8 x i64 vector value
87+
def v16i64 : ValueType<1024,62>; // 16 x i64 vector value
88+
def v32i64 : ValueType<2048,63>; // 32 x i64 vector value
89+
90+
def v1i128 : ValueType<128, 64>; // 1 x i128 vector value
91+
92+
def v2f16 : ValueType<32 , 65>; // 2 x f16 vector value
93+
def v3f16 : ValueType<48 , 66>; // 3 x f16 vector value
94+
def v4f16 : ValueType<64 , 67>; // 4 x f16 vector value
95+
def v8f16 : ValueType<128, 68>; // 8 x f16 vector value
96+
def v16f16 : ValueType<256, 69>; // 8 x f16 vector value
97+
def v32f16 : ValueType<512, 70>; // 8 x f16 vector value
98+
def v1f32 : ValueType<32 , 71>; // 1 x f32 vector value
99+
def v2f32 : ValueType<64 , 72>; // 2 x f32 vector value
100+
def v3f32 : ValueType<96 , 73>; // 3 x f32 vector value
101+
def v4f32 : ValueType<128, 74>; // 4 x f32 vector value
102+
def v5f32 : ValueType<160, 75>; // 5 x f32 vector value
103+
def v8f32 : ValueType<256, 76>; // 8 x f32 vector value
104+
def v16f32 : ValueType<512, 77>; // 16 x f32 vector value
105+
def v32f32 : ValueType<1024, 78>; // 32 x f32 vector value
106+
def v64f32 : ValueType<2048, 79>; // 64 x f32 vector value
107+
def v128f32 : ValueType<4096, 80>; // 128 x f32 vector value
108+
def v256f32 : ValueType<8182, 81>; // 256 x f32 vector value
109+
def v512f32 : ValueType<16384, 82>; // 512 x f32 vector value
110+
def v1024f32 : ValueType<32768, 83>; // 1024 x f32 vector value
111+
def v2048f32 : ValueType<65536, 84>; // 2048 x f32 vector value
112+
def v1f64 : ValueType<64, 85>; // 1 x f64 vector value
113+
def v2f64 : ValueType<128, 86>; // 2 x f64 vector value
114+
def v4f64 : ValueType<256, 87>; // 4 x f64 vector value
115+
def v8f64 : ValueType<512, 88>; // 8 x f64 vector value
116+
117+
def nxv1i1 : ValueType<1, 89>; // n x 1 x i1 vector value
118+
def nxv2i1 : ValueType<2, 90>; // n x 2 x i1 vector value
119+
def nxv4i1 : ValueType<4, 91>; // n x 4 x i1 vector value
120+
def nxv8i1 : ValueType<8, 92>; // n x 8 x i1 vector value
121+
def nxv16i1 : ValueType<16, 93>; // n x 16 x i1 vector value
122+
def nxv32i1 : ValueType<32, 94>; // n x 32 x i1 vector value
123+
124+
def nxv1i8 : ValueType<8, 95>; // n x 1 x i8 vector value
125+
def nxv2i8 : ValueType<16, 96>; // n x 2 x i8 vector value
126+
def nxv4i8 : ValueType<32, 97>; // n x 4 x i8 vector value
127+
def nxv8i8 : ValueType<64, 98>; // n x 8 x i8 vector value
128+
def nxv16i8 : ValueType<128, 99>; // n x 16 x i8 vector value
129+
def nxv32i8 : ValueType<256, 100>; // n x 32 x i8 vector value
130+
131+
def nxv1i16 : ValueType<16, 101>; // n x 1 x i16 vector value
132+
def nxv2i16 : ValueType<32, 102>; // n x 2 x i16 vector value
133+
def nxv4i16 : ValueType<64, 103>; // n x 4 x i16 vector value
134+
def nxv8i16 : ValueType<128, 104>; // n x 8 x i16 vector value
135+
def nxv16i16: ValueType<256, 105>; // n x 16 x i16 vector value
136+
def nxv32i16: ValueType<512, 106>; // n x 32 x i16 vector value
137+
138+
def nxv1i32 : ValueType<32, 107>; // n x 1 x i32 vector value
139+
def nxv2i32 : ValueType<64, 108>; // n x 2 x i32 vector value
140+
def nxv4i32 : ValueType<128, 109>; // n x 4 x i32 vector value
141+
def nxv8i32 : ValueType<256, 110>; // n x 8 x i32 vector value
142+
def nxv16i32: ValueType<512, 111>; // n x 16 x i32 vector value
143+
def nxv32i32: ValueType<1024,112>; // n x 32 x i32 vector value
144+
145+
def nxv1i64 : ValueType<64, 113>; // n x 1 x i64 vector value
146+
def nxv2i64 : ValueType<128, 114>; // n x 2 x i64 vector value
147+
def nxv4i64 : ValueType<256, 115>; // n x 4 x i64 vector value
148+
def nxv8i64 : ValueType<512, 116>; // n x 8 x i64 vector value
149+
def nxv16i64: ValueType<1024,117>; // n x 16 x i64 vector value
150+
def nxv32i64: ValueType<2048,118>; // n x 32 x i64 vector value
151+
152+
def nxv2f16 : ValueType<32 , 119>; // n x 2 x f16 vector value
153+
def nxv4f16 : ValueType<64 , 120>; // n x 4 x f16 vector value
154+
def nxv8f16 : ValueType<128, 121>; // n x 8 x f16 vector value
155+
def nxv1f32 : ValueType<32 , 122>; // n x 1 x f32 vector value
156+
def nxv2f32 : ValueType<64 , 123>; // n x 2 x f32 vector value
157+
def nxv4f32 : ValueType<128, 124>; // n x 4 x f32 vector value
158+
def nxv8f32 : ValueType<256, 125>; // n x 8 x f32 vector value
159+
def nxv16f32 : ValueType<512, 126>; // n x 16 x f32 vector value
160+
def nxv1f64 : ValueType<64, 127>; // n x 1 x f64 vector value
161+
def nxv2f64 : ValueType<128, 128>; // n x 2 x f64 vector value
162+
def nxv4f64 : ValueType<256, 129>; // n x 4 x f64 vector value
163+
def nxv8f64 : ValueType<512, 130>; // n x 8 x f64 vector value
164+
165+
def x86mmx : ValueType<64 , 131>; // X86 MMX value
166+
def FlagVT : ValueType<0 , 132>; // Pre-RA sched glue
167+
def isVoid : ValueType<0 , 133>; // Produces no value
168+
def untyped: ValueType<8 , 134>; // Produces an untyped value
169+
def exnref: ValueType<0, 135>; // WebAssembly's exnref type
168170
def token : ValueType<0 , 248>; // TokenTy
169171
def MetadataVT: ValueType<0, 249>; // Metadata
170172

0 commit comments

Comments
 (0)