| void def(void); | |
| void r0(void); | |
| void r1(void); | |
| void sw_long(long long a) | |
| { | |
| switch (a) { | |
| case 0: return r0(); | |
| case 1LL << 00: return r1(); | |
| case 1LL << 32: return r1(); | |
| } | |
| return def(); | |
| } | |
| /* | |
| * check-name: switch-long | |
| * check-command: test-linearize -Wno-decl $file | |
| * | |
| * check-output-start | |
| sw_long: | |
| .L0: | |
| <entry-point> | |
| switch.64 %arg1, 0 -> .L2, 1 -> .L3, 4294967296 -> .L4, default -> .L1 | |
| .L2: | |
| call r0 | |
| br .L5 | |
| .L3: | |
| call r1 | |
| br .L5 | |
| .L4: | |
| call r1 | |
| br .L5 | |
| .L1: | |
| call def | |
| br .L5 | |
| .L5: | |
| ret | |
| * check-output-end | |
| */ |