1# RUN: llc -mtriple=s390x-linux-gnu -mcpu=z13 -start-before=postrapseudos %s -o - \ 2# RUN: | FileCheck %s 3# 4# Check that integer load and test instructions are not emitted for unsigned 5# comparisons unless checking for equality. That would be wrong, since the 6# operands are implicitly treated as signed values. 7 8# Not legal: Logical comparison used for >= (CCMask is 10). 9# CHECK-LABEL: fun0 10# CHECK-NOT: lt 11--- 12name: fun0 13tracksRegLiveness: true 14body: | 15 bb.0 (): 16 liveins: $r1d 17 renamable $r0l = L $r1d, 0, $noreg 18 CLFIMux renamable $r0l, 0, implicit-def $cc 19 BRC 14, 10, %bb.2, implicit $cc 20 21 bb.1 (): 22 liveins: $r0l 23 ST renamable $r0l, $r15d, 164, $noreg 24 25 bb.2 (): 26 liveins: $r0l 27 ST killed renamable $r0l, $r15d, 164, $noreg 28 Return 29... 30 31# Legal: Logical comparison used for == (CCMask is 8). 32# CHECK-LABEL: fun1 33# CHECK: lt 34--- 35name: fun1 36tracksRegLiveness: true 37body: | 38 bb.0 (): 39 liveins: $r1d 40 renamable $r0l = L $r1d, 0, $noreg 41 CLFIMux renamable $r0l, 0, implicit-def $cc 42 BRC 14, 8, %bb.2, implicit $cc 43 44 bb.1 (): 45 liveins: $r0l 46 ST renamable $r0l, $r15d, 164, $noreg 47 48 bb.2 (): 49 liveins: $r0l 50 ST killed renamable $r0l, $r15d, 164, $noreg 51 Return 52... 53