[llvm-dev] Store unswitch

Davide Italiano via llvm-dev llvm-dev at lists.llvm.org
Wed Apr 26 07:48:23 PDT 2017


On Wed, Apr 26, 2017 at 12:19 AM, Hongbin Zheng <etherzhhb at gmail.com> wrote:
> Looks like this do not work:
>
> // Type your code here, or load an example.
> int a[10];
>
> void unswitch2(int i, int x, int y0, int y1) {
>   if (x) {
>     a[i] = y0;
>     a[i + 1] = y1;
>   } else {
>     a[i + 1] = y0;
>     a[i] = y1;
>   }
> }
>

Interestingly, only `icc` produces the same code for both forms in this case.
https://godbolt.org/g/Go7Hoo
I'm not entirely convinced this matters, but if you care, consider
opening a bug on llvm.org/bugs and/or submitting a patch.

--
Davide


More information about the llvm-dev mailing list