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

@@ -60,9 +60,9 @@ void main_1(const device In2& x_13, const device In1& x_17, device Out0& x_15, c
int const x_86 = x_17.data_in1.arr[(x_81 + as_type<uint>(x_82))];
x_15.data_out0.arr[(x_77 + as_type<uint>(x_78))] = x_86;
int const x_88 = index_out0;
index_out0 = (x_88 - 1);
index_out0 = as_type<int>((as_type<uint>(x_88) - as_type<uint>(1)));
int const x_90 = index_in1;
index_in1 = (x_90 - 1);
index_in1 = as_type<int>((as_type<uint>(x_90) - as_type<uint>(1)));
} else {
uint const x_92 = base_index_out;
int const x_93 = index_out1;
@@ -71,14 +71,14 @@ void main_1(const device In2& x_13, const device In1& x_17, device Out0& x_15, c
int const x_101 = x_19.data_in0.arr[(x_96 + as_type<uint>(x_97))];
x_15.data_out0.arr[(x_92 + as_type<uint>(x_93))] = x_101;
int const x_103 = index_out1;
index_out1 = (x_103 - 1);
index_out1 = as_type<int>((as_type<uint>(x_103) - as_type<uint>(1)));
int const x_105 = index_in1;
index_in1 = (x_105 - 1);
index_in1 = as_type<int>((as_type<uint>(x_105) - as_type<uint>(1)));
}
int const x_107 = condition_index;
int const x_110 = x_13.data_in2.arr[(x_107 + 1)];
int const x_110 = x_13.data_in2.arr[as_type<int>((as_type<uint>(x_107) + as_type<uint>(1)))];
int const x_111 = condition_index;
condition_index = (x_111 + x_110);
condition_index = as_type<int>((as_type<uint>(x_111) + as_type<uint>(x_110)));
int const x_113 = index_in0;
temp0 = x_113;
int const x_114 = index_in1;
@@ -93,7 +93,7 @@ void main_1(const device In2& x_13, const device In1& x_17, device Out0& x_15, c
index_out1 = x_118;
{
int const x_119 = i;
i = (x_119 + 1);
i = as_type<int>((as_type<uint>(x_119) + as_type<uint>(1)));
}
}
return;

View File

@@ -60,9 +60,9 @@ void main_1(const device In2& x_13, const device In1& x_17, device Out0& x_15, c
int const x_86 = x_17.data_in1.arr[(x_81 + as_type<uint>(x_82))];
x_15.data_out0.arr[(x_77 + as_type<uint>(x_78))] = x_86;
int const x_88 = index_out0;
index_out0 = (x_88 - 1);
index_out0 = as_type<int>((as_type<uint>(x_88) - as_type<uint>(1)));
int const x_90 = index_in1;
index_in1 = (x_90 - 1);
index_in1 = as_type<int>((as_type<uint>(x_90) - as_type<uint>(1)));
} else {
uint const x_92 = base_index_out;
int const x_93 = index_out1;
@@ -71,14 +71,14 @@ void main_1(const device In2& x_13, const device In1& x_17, device Out0& x_15, c
int const x_101 = x_19.data_in0.arr[(x_96 + as_type<uint>(x_97))];
x_15.data_out0.arr[(x_92 + as_type<uint>(x_93))] = x_101;
int const x_103 = index_out1;
index_out1 = (x_103 - 1);
index_out1 = as_type<int>((as_type<uint>(x_103) - as_type<uint>(1)));
int const x_105 = index_in1;
index_in1 = (x_105 - 1);
index_in1 = as_type<int>((as_type<uint>(x_105) - as_type<uint>(1)));
}
int const x_107 = condition_index;
int const x_110 = x_13.data_in2.arr[(x_107 + 1)];
int const x_110 = x_13.data_in2.arr[as_type<int>((as_type<uint>(x_107) + as_type<uint>(1)))];
int const x_111 = condition_index;
condition_index = (x_111 + x_110);
condition_index = as_type<int>((as_type<uint>(x_111) + as_type<uint>(x_110)));
int const x_113 = index_in0;
temp0 = x_113;
int const x_114 = index_in1;
@@ -93,7 +93,7 @@ void main_1(const device In2& x_13, const device In1& x_17, device Out0& x_15, c
index_out1 = x_118;
{
int const x_119 = i;
i = (x_119 + 1);
i = as_type<int>((as_type<uint>(x_119) + as_type<uint>(1)));
}
}
return;