MSL writer: make signed int overflow defined behaviour

Bug: tint:124
Change-Id: Icf545b633d6390ceb7f639e80111390005e311a1
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/60100
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
Reviewed-by: David Neto <dneto@google.com>
This commit is contained in:
Antonio Maiorano
2021-07-29 13:51:47 +00:00
committed by Tint LUCI CQ
parent 1f0200a3ff
commit e5dbe24e94
651 changed files with 3963 additions and 3048 deletions

View File

@@ -51,15 +51,15 @@ void main_1(constant buf0& x_5, thread float4* const tint_symbol_4) {
int const x_68 = i;
int const x_70 = x_5.x_GLF_uniform_int_values.arr[0].el;
int const x_72 = j;
m[x_66][x_67] = float(((x_68 * x_70) + x_72));
m[x_66][x_67] = float(as_type<int>((as_type<uint>(as_type<int>((as_type<uint>(x_68) * as_type<uint>(x_70)))) + as_type<uint>(x_72))));
{
int const x_76 = j;
j = (x_76 + 1);
j = as_type<int>((as_type<uint>(x_76) + as_type<uint>(1)));
}
}
{
int const x_78 = i;
i = (x_78 + 1);
i = as_type<int>((as_type<uint>(x_78) + as_type<uint>(1)));
}
}
float2x2 const x_80 = m;

View File

@@ -51,15 +51,15 @@ void main_1(constant buf0& x_5, thread float4* const tint_symbol_4) {
int const x_68 = i;
int const x_70 = x_5.x_GLF_uniform_int_values.arr[0].el;
int const x_72 = j;
m[x_66][x_67] = float(((x_68 * x_70) + x_72));
m[x_66][x_67] = float(as_type<int>((as_type<uint>(as_type<int>((as_type<uint>(x_68) * as_type<uint>(x_70)))) + as_type<uint>(x_72))));
{
int const x_76 = j;
j = (x_76 + 1);
j = as_type<int>((as_type<uint>(x_76) + as_type<uint>(1)));
}
}
{
int const x_78 = i;
i = (x_78 + 1);
i = as_type<int>((as_type<uint>(x_78) + as_type<uint>(1)));
}
}
float2x2 const x_80 = m;