Fix #1360: uint->int width conversions must still be typed as uint.

This commit is contained in:
John Kessenich
2018-06-04 19:11:25 -06:00
parent 14b85d3ff3
commit ad7645f4f5
8 changed files with 662 additions and 701 deletions

View File

@@ -128,8 +128,8 @@ spv.int16.frag
53: TypePointer Function 52(i16vec2)
57: TypeVector 36(int16_t) 2
58: TypePointer Function 57(i16vec2)
65: TypeVector 17(int) 2
66: TypePointer Function 65(ivec2)
61: TypeVector 17(int) 2
66: TypePointer Function 61(ivec2)
71: TypeInt 64 1
72: TypeVector 71(int64_t) 2
73: TypePointer Function 72(i64vec2)
@@ -148,9 +148,9 @@ spv.int16.frag
151: TypeInt 8 1
152: TypeVector 151(int8_t) 2
153: TypePointer Function 152(i8vec2)
160: TypeInt 8 0
161: TypeVector 160(int8_t) 2
162: TypePointer Function 161(i8vec2)
158: TypeInt 8 0
159: TypeVector 158(int8_t) 2
162: TypePointer Function 159(i8vec2)
173: TypeBool
174: TypeVector 173(bool) 2
175: TypePointer Function 174(bvec2)
@@ -235,15 +235,15 @@ spv.int16.frag
56: 49(ivec2) SConvert 55
Store 51(i32v) 56
60: 57(i16vec2) Load 59(u16v)
61: 49(ivec2) UConvert 60
62: 49(ivec2) Bitcast 61
Store 51(i32v) 62
63: 52(i16vec2) Load 54(i16v)
64: 57(i16vec2) Bitcast 63
Store 59(u16v) 64
62: 61(ivec2) UConvert 60
63: 49(ivec2) Bitcast 62
Store 51(i32v) 63
64: 52(i16vec2) Load 54(i16v)
65: 57(i16vec2) Bitcast 64
Store 59(u16v) 65
68: 52(i16vec2) Load 54(i16v)
69: 49(ivec2) SConvert 68
70: 65(ivec2) Bitcast 69
70: 61(ivec2) Bitcast 69
Store 67(u32v) 70
75: 52(i16vec2) Load 54(i16v)
76: 72(i64vec2) SConvert 75
@@ -253,10 +253,10 @@ spv.int16.frag
83: 78(i64vec2) Bitcast 82
Store 80(u64v) 83
84: 57(i16vec2) Load 59(u16v)
85: 65(ivec2) UConvert 84
85: 61(ivec2) UConvert 84
Store 67(u32v) 85
86: 57(i16vec2) Load 59(u16v)
87: 72(i64vec2) UConvert 86
87: 78(i64vec2) UConvert 86
88: 72(i64vec2) Bitcast 87
Store 74(i64v) 88
89: 57(i16vec2) Load 59(u16v)
@@ -284,7 +284,7 @@ spv.int16.frag
116: 49(ivec2) SConvert 115
Store 51(i32v) 116
117: 57(i16vec2) Load 59(u16v)
118: 49(ivec2) UConvert 117
118: 61(ivec2) UConvert 117
119: 49(ivec2) Bitcast 118
Store 51(i32v) 119
120: 52(i16vec2) Load 54(i16v)
@@ -292,7 +292,7 @@ spv.int16.frag
Store 59(u16v) 121
122: 52(i16vec2) Load 54(i16v)
123: 49(ivec2) SConvert 122
124: 65(ivec2) Bitcast 123
124: 61(ivec2) Bitcast 123
Store 67(u32v) 124
125: 52(i16vec2) Load 54(i16v)
126: 72(i64vec2) SConvert 125
@@ -302,14 +302,14 @@ spv.int16.frag
129: 78(i64vec2) Bitcast 128
Store 80(u64v) 129
130: 57(i16vec2) Load 59(u16v)
131: 65(ivec2) UConvert 130
131: 61(ivec2) UConvert 130
Store 67(u32v) 131
132: 57(i16vec2) Load 59(u16v)
133: 72(i64vec2) UConvert 132
133: 78(i64vec2) UConvert 132
134: 72(i64vec2) Bitcast 133
Store 74(i64v) 134
135: 57(i16vec2) Load 59(u16v)
136: 72(i64vec2) UConvert 135
136: 78(i64vec2) UConvert 135
137: 72(i64vec2) Bitcast 136
138: 78(i64vec2) Bitcast 137
Store 80(u64v) 138
@@ -335,19 +335,19 @@ spv.int16.frag
156: 152(i8vec2) SConvert 155
Store 154(i8v) 156
157: 57(i16vec2) Load 59(u16v)
158: 152(i8vec2) UConvert 157
159: 152(i8vec2) Bitcast 158
Store 154(i8v) 159
160: 159(i8vec2) UConvert 157
161: 152(i8vec2) Bitcast 160
Store 154(i8v) 161
164: 52(i16vec2) Load 54(i16v)
165: 152(i8vec2) SConvert 164
166: 161(i8vec2) Bitcast 165
166: 159(i8vec2) Bitcast 165
Store 163(u8v) 166
167: 57(i16vec2) Load 59(u16v)
168: 161(i8vec2) UConvert 167
168: 159(i8vec2) UConvert 167
Store 163(u8v) 168
169: 57(i16vec2) Load 59(u16v)
170: 161(i8vec2) UConvert 169
171: 52(i16vec2) UConvert 170
170: 159(i8vec2) UConvert 169
171: 57(i16vec2) UConvert 170
172: 52(i16vec2) Bitcast 171
Store 54(i16v) 172
177: 174(bvec2) Load 176(bv)