Commit eb06849
committed
Per-operation signed int type resolution replaces global preference
The previous signed int preference in find_spirv_type caused regressions
for unsigned operations (ULessThan, ConvertUToF, etc.) by making the
int32_type fallback always signed. This produced type mismatches when
one operand kept its original unsigned type and another used the signed
fallback.
Replace with targeted approach:
- Track signed_int32_type separately from int32_type
- For explicitly signed ops (ConvertSToF, SLessThan, etc.), use the
signed int type
- For other cross-class ops, infer operand type from Sym atoms to
ensure consistency between existing and synthesized operands1 parent 78aee01 commit eb06849
2 files changed
Lines changed: 97 additions & 20 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
122 | 122 | | |
123 | 123 | | |
124 | 124 | | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
125 | 128 | | |
126 | 129 | | |
127 | 130 | | |
| |||
1107 | 1110 | | |
1108 | 1111 | | |
1109 | 1112 | | |
| 1113 | + | |
| 1114 | + | |
| 1115 | + | |
| 1116 | + | |
| 1117 | + | |
| 1118 | + | |
| 1119 | + | |
| 1120 | + | |
| 1121 | + | |
| 1122 | + | |
| 1123 | + | |
| 1124 | + | |
| 1125 | + | |
| 1126 | + | |
| 1127 | + | |
| 1128 | + | |
| 1129 | + | |
| 1130 | + | |
| 1131 | + | |
| 1132 | + | |
| 1133 | + | |
| 1134 | + | |
| 1135 | + | |
| 1136 | + | |
| 1137 | + | |
| 1138 | + | |
| 1139 | + | |
| 1140 | + | |
| 1141 | + | |
| 1142 | + | |
| 1143 | + | |
| 1144 | + | |
| 1145 | + | |
1110 | 1146 | | |
1111 | 1147 | | |
1112 | 1148 | | |
| |||
1260 | 1296 | | |
1261 | 1297 | | |
1262 | 1298 | | |
| 1299 | + | |
| 1300 | + | |
| 1301 | + | |
| 1302 | + | |
| 1303 | + | |
| 1304 | + | |
| 1305 | + | |
| 1306 | + | |
| 1307 | + | |
| 1308 | + | |
| 1309 | + | |
| 1310 | + | |
| 1311 | + | |
| 1312 | + | |
| 1313 | + | |
| 1314 | + | |
| 1315 | + | |
| 1316 | + | |
| 1317 | + | |
| 1318 | + | |
| 1319 | + | |
| 1320 | + | |
| 1321 | + | |
| 1322 | + | |
| 1323 | + | |
| 1324 | + | |
| 1325 | + | |
| 1326 | + | |
| 1327 | + | |
1263 | 1328 | | |
1264 | 1329 | | |
1265 | 1330 | | |
| |||
1886 | 1951 | | |
1887 | 1952 | | |
1888 | 1953 | | |
| 1954 | + | |
1889 | 1955 | | |
1890 | 1956 | | |
1891 | 1957 | | |
| |||
1912 | 1978 | | |
1913 | 1979 | | |
1914 | 1980 | | |
| 1981 | + | |
1915 | 1982 | | |
1916 | 1983 | | |
1917 | 1984 | | |
| |||
1940 | 2007 | | |
1941 | 2008 | | |
1942 | 2009 | | |
| 2010 | + | |
1943 | 2011 | | |
1944 | 2012 | | |
1945 | 2013 | | |
| |||
1972 | 2040 | | |
1973 | 2041 | | |
1974 | 2042 | | |
| 2043 | + | |
1975 | 2044 | | |
1976 | 2045 | | |
1977 | 2046 | | |
| |||
2001 | 2070 | | |
2002 | 2071 | | |
2003 | 2072 | | |
| 2073 | + | |
2004 | 2074 | | |
2005 | 2075 | | |
2006 | 2076 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
954 | 954 | | |
955 | 955 | | |
956 | 956 | | |
| 957 | + | |
| 958 | + | |
957 | 959 | | |
958 | 960 | | |
959 | 961 | | |
| |||
1056 | 1058 | | |
1057 | 1059 | | |
1058 | 1060 | | |
| 1061 | + | |
1059 | 1062 | | |
1060 | 1063 | | |
1061 | 1064 | | |
| |||
2261 | 2264 | | |
2262 | 2265 | | |
2263 | 2266 | | |
2264 | | - | |
2265 | | - | |
2266 | | - | |
2267 | | - | |
2268 | | - | |
2269 | | - | |
2270 | | - | |
2271 | | - | |
2272 | | - | |
2273 | | - | |
2274 | | - | |
2275 | | - | |
2276 | | - | |
2277 | | - | |
2278 | | - | |
2279 | | - | |
2280 | | - | |
2281 | | - | |
2282 | | - | |
2283 | 2267 | | |
2284 | 2268 | | |
2285 | 2269 | | |
2286 | | - | |
| 2270 | + | |
| 2271 | + | |
| 2272 | + | |
| 2273 | + | |
| 2274 | + | |
| 2275 | + | |
| 2276 | + | |
| 2277 | + | |
| 2278 | + | |
| 2279 | + | |
| 2280 | + | |
| 2281 | + | |
| 2282 | + | |
| 2283 | + | |
| 2284 | + | |
| 2285 | + | |
| 2286 | + | |
| 2287 | + | |
| 2288 | + | |
| 2289 | + | |
| 2290 | + | |
| 2291 | + | |
| 2292 | + | |
| 2293 | + | |
2287 | 2294 | | |
2288 | 2295 | | |
2289 | 2296 | | |
| |||
0 commit comments