[llvm] ef53ec9 - [CSKY][test][NFC] Add more tests of conditional select

Ben Shi via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 4 00:22:43 PDT 2023


Author: Ben Shi
Date: 2023-07-04T15:22:18+08:00
New Revision: ef53ec969b459718f9e84031d57dc92b33c79029

URL: https://github.com/llvm/llvm-project/commit/ef53ec969b459718f9e84031d57dc92b33c79029
DIFF: https://github.com/llvm/llvm-project/commit/ef53ec969b459718f9e84031d57dc92b33c79029.diff

LOG: [CSKY][test][NFC] Add more tests of conditional select

Reviewed By: zixuan-wu

Differential Revision: https://reviews.llvm.org/D154408

Added: 
    

Modified: 
    llvm/test/CodeGen/CSKY/select.ll

Removed: 
    


################################################################################
diff  --git a/llvm/test/CodeGen/CSKY/select.ll b/llvm/test/CodeGen/CSKY/select.ll
index 2416f8e488d081..eb0bb94e70ec07 100644
--- a/llvm/test/CodeGen/CSKY/select.ll
+++ b/llvm/test/CodeGen/CSKY/select.ll
@@ -132,6 +132,59 @@ entry:
   ret i32 %ret
 }
 
+define i32 @selectRI_0_if_true(i1 %c, i32 %q) {
+; CHECK-LABEL: selectRI_0_if_true:
+; CHECK:       # %bb.0:
+; CHECK-NEXT:    movi16 a2, 0
+; CHECK-NEXT:    btsti16 a0, 0
+; CHECK-NEXT:    movt32 a1, a2
+; CHECK-NEXT:    mov16 a0, a1
+; CHECK-NEXT:    rts16
+;
+; GENERIC-LABEL: selectRI_0_if_true:
+; GENERIC:       # %bb.0:
+; GENERIC-NEXT:    .cfi_def_cfa_offset 0
+; GENERIC-NEXT:    subi16 sp, sp, 4
+; GENERIC-NEXT:    .cfi_def_cfa_offset 4
+; GENERIC-NEXT:    mov16 a2, a0
+; GENERIC-NEXT:    movi16 a0, 0
+; GENERIC-NEXT:    btsti16 a2, 0
+; GENERIC-NEXT:    bt16 .LBB4_2
+; GENERIC-NEXT:  # %bb.1:
+; GENERIC-NEXT:    mov16 a0, a1
+; GENERIC-NEXT:  .LBB4_2:
+; GENERIC-NEXT:    addi16 sp, sp, 4
+; GENERIC-NEXT:    rts16
+  %ret = select i1 %c, i32 0, i32 %q
+  ret i32 %ret
+}
+
+define i32 @selectRI_0_if_false(i1 %c, i32 %q) {
+; CHECK-LABEL: selectRI_0_if_false:
+; CHECK:       # %bb.0:
+; CHECK-NEXT:    movi16 a2, 0
+; CHECK-NEXT:    btsti16 a0, 0
+; CHECK-NEXT:    movt32 a2, a1
+; CHECK-NEXT:    mov16 a0, a2
+; CHECK-NEXT:    rts16
+;
+; GENERIC-LABEL: selectRI_0_if_false:
+; GENERIC:       # %bb.0:
+; GENERIC-NEXT:    .cfi_def_cfa_offset 0
+; GENERIC-NEXT:    subi16 sp, sp, 4
+; GENERIC-NEXT:    .cfi_def_cfa_offset 4
+; GENERIC-NEXT:    btsti16 a0, 0
+; GENERIC-NEXT:    bt16 .LBB5_2
+; GENERIC-NEXT:  # %bb.1:
+; GENERIC-NEXT:    movi16 a1, 0
+; GENERIC-NEXT:  .LBB5_2:
+; GENERIC-NEXT:    mov16 a0, a1
+; GENERIC-NEXT:    addi16 sp, sp, 4
+; GENERIC-NEXT:    rts16
+  %ret = select i1 %c, i32 %q, i32 0
+  ret i32 %ret
+}
+
 define i64 @selectRR_eq_i64(i64 %x, i64 %y, i64 %n, i64 %m) {
 ; CHECK-LABEL: selectRR_eq_i64:
 ; CHECK:       # %bb.0: # %entry
@@ -159,13 +212,13 @@ define i64 @selectRR_eq_i64(i64 %x, i64 %y, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpnei16 a0, 0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB4_2
+; GENERIC-NEXT:    bt16 .LBB6_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    movi16 a0, 4
-; GENERIC-NEXT:    br32 .LBB4_3
-; GENERIC-NEXT:  .LBB4_2:
+; GENERIC-NEXT:    br32 .LBB6_3
+; GENERIC-NEXT:  .LBB6_2:
 ; GENERIC-NEXT:    movi16 a0, 12
-; GENERIC-NEXT:  .LBB4_3: # %entry
+; GENERIC-NEXT:  .LBB6_3: # %entry
 ; GENERIC-NEXT:    addu16 a0, sp
 ; GENERIC-NEXT:    mov16 a1, a0
 ; GENERIC-NEXT:    ld16.w a0, (a0, 0)
@@ -206,15 +259,15 @@ define i64 @selectRI_eq_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpnei16 l0, 0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB5_2
+; GENERIC-NEXT:    bf16 .LBB7_2
 ; GENERIC-NEXT:  # %bb.1:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 8)
-; GENERIC-NEXT:  .LBB5_2: # %entry
+; GENERIC-NEXT:  .LBB7_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB5_4
+; GENERIC-NEXT:    bf16 .LBB7_4
 ; GENERIC-NEXT:  # %bb.3:
 ; GENERIC-NEXT:    ld16.w a3, (sp, 12)
-; GENERIC-NEXT:  .LBB5_4: # %entry
+; GENERIC-NEXT:  .LBB7_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    mov16 a1, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -275,15 +328,15 @@ define i64 @selectRX_eq_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpnei16 l1, 0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB6_2
+; GENERIC-NEXT:    bf16 .LBB8_2
 ; GENERIC-NEXT:  # %bb.1:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 12)
-; GENERIC-NEXT:  .LBB6_2: # %entry
+; GENERIC-NEXT:  .LBB8_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB6_4
+; GENERIC-NEXT:    bf16 .LBB8_4
 ; GENERIC-NEXT:  # %bb.3:
 ; GENERIC-NEXT:    ld16.w a3, (sp, 16)
-; GENERIC-NEXT:  .LBB6_4: # %entry
+; GENERIC-NEXT:  .LBB8_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    mov16 a1, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -314,15 +367,15 @@ define i64 @selectC_eq_i64(i1 %c, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB7_2
+; GENERIC-NEXT:    bt16 .LBB9_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a1
-; GENERIC-NEXT:  .LBB7_2: # %entry
+; GENERIC-NEXT:  .LBB9_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB7_4
+; GENERIC-NEXT:    bf16 .LBB9_4
 ; GENERIC-NEXT:  # %bb.3:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 4)
-; GENERIC-NEXT:  .LBB7_4: # %entry
+; GENERIC-NEXT:  .LBB9_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    mov16 a1, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -368,10 +421,10 @@ define i16 @selectRR_eq_i16(i16 %x, i16 %y, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    cmpne16 l2, a0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB8_2
+; GENERIC-NEXT:    bt16 .LBB10_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB8_2: # %entry
+; GENERIC-NEXT:  .LBB10_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -416,10 +469,10 @@ define i16 @selectRI_eq_i16(i16 %x, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    cmpnei16 l1, 10
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB9_2
+; GENERIC-NEXT:    bt16 .LBB11_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB9_2: # %entry
+; GENERIC-NEXT:  .LBB11_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -468,10 +521,10 @@ define i16 @selectRX_eq_i16(i16 %x, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    cmpne16 l1, a3
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB10_2
+; GENERIC-NEXT:    bt16 .LBB12_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB10_2: # %entry
+; GENERIC-NEXT:  .LBB12_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -498,10 +551,10 @@ define i16 @selectC_eq_i16(i1 %c, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB11_2
+; GENERIC-NEXT:    bt16 .LBB13_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB11_2: # %entry
+; GENERIC-NEXT:  .LBB13_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -535,10 +588,10 @@ define i8 @selectRR_eq_i8(i8 %x, i8 %y, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    cmpne16 a1, a0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB12_2
+; GENERIC-NEXT:    bt16 .LBB14_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB12_2: # %entry
+; GENERIC-NEXT:  .LBB14_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -569,10 +622,10 @@ define i8 @selectRI_eq_i8(i8 %x, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    cmpnei16 a3, 10
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB13_2
+; GENERIC-NEXT:    bt16 .LBB15_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB13_2: # %entry
+; GENERIC-NEXT:  .LBB15_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -602,10 +655,10 @@ define i8 @selectRX_eq_i8(i8 %x, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    cmpne16 a3, a0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB14_2
+; GENERIC-NEXT:    bt16 .LBB16_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB14_2: # %entry
+; GENERIC-NEXT:  .LBB16_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -629,10 +682,10 @@ define i8 @selectC_eq_i8(i1 %c, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB15_2
+; GENERIC-NEXT:    bt16 .LBB17_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB15_2: # %entry
+; GENERIC-NEXT:  .LBB17_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -658,10 +711,10 @@ define i1 @selectRR_eq_i1(i1 %x, i1 %y, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    xor16 a0, a1
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB16_2
+; GENERIC-NEXT:    bt16 .LBB18_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a3
-; GENERIC-NEXT:  .LBB16_2: # %entry
+; GENERIC-NEXT:  .LBB18_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -685,10 +738,10 @@ define i1 @selectRI_eq_i1(i1 %x, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB17_2
+; GENERIC-NEXT:    bt16 .LBB19_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a1, a2
-; GENERIC-NEXT:  .LBB17_2: # %entry
+; GENERIC-NEXT:  .LBB19_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a1
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -712,10 +765,10 @@ define i1 @selectRX_eq_i1(i1 %x, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB18_2
+; GENERIC-NEXT:    bt16 .LBB20_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB18_2: # %entry
+; GENERIC-NEXT:  .LBB20_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -739,10 +792,10 @@ define i1 @selectC_eq_i1(i1 %c, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB19_2
+; GENERIC-NEXT:    bt16 .LBB21_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB19_2: # %entry
+; GENERIC-NEXT:  .LBB21_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -770,10 +823,10 @@ define i32 @selectRR_ne_i32(i32 %x, i32 %y, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    movi16 a1, 1
 ; GENERIC-NEXT:    subu16 a1, a0
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB20_2
+; GENERIC-NEXT:    bt16 .LBB22_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB20_2: # %entry
+; GENERIC-NEXT:  .LBB22_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -801,10 +854,10 @@ define i32 @selectRI_ne_i32(i32 %x, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB21_2
+; GENERIC-NEXT:    bt16 .LBB23_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB21_2: # %entry
+; GENERIC-NEXT:  .LBB23_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -847,10 +900,10 @@ define i32 @selectRX_ne_i32(i32 %x, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB22_2
+; GENERIC-NEXT:    bt16 .LBB24_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB22_2: # %entry
+; GENERIC-NEXT:  .LBB24_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -876,10 +929,10 @@ define i32 @selectC_ne_i32(i1 %c, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB23_2
+; GENERIC-NEXT:    bt16 .LBB25_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB23_2: # %entry
+; GENERIC-NEXT:  .LBB25_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -917,13 +970,13 @@ define i64 @selectRR_ne_i64(i64 %x, i64 %y, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    movi16 a1, 1
 ; GENERIC-NEXT:    subu16 a1, a0
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB24_2
+; GENERIC-NEXT:    bt16 .LBB26_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    movi16 a0, 4
-; GENERIC-NEXT:    br32 .LBB24_3
-; GENERIC-NEXT:  .LBB24_2:
+; GENERIC-NEXT:    br32 .LBB26_3
+; GENERIC-NEXT:  .LBB26_2:
 ; GENERIC-NEXT:    movi16 a0, 12
-; GENERIC-NEXT:  .LBB24_3: # %entry
+; GENERIC-NEXT:  .LBB26_3: # %entry
 ; GENERIC-NEXT:    addu16 a0, sp
 ; GENERIC-NEXT:    mov16 a1, a0
 ; GENERIC-NEXT:    ld16.w a0, (a0, 0)
@@ -966,15 +1019,15 @@ define i64 @selectRI_ne_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    movi16 a0, 1
 ; GENERIC-NEXT:    subu16 a0, a1
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB25_2
+; GENERIC-NEXT:    bf16 .LBB27_2
 ; GENERIC-NEXT:  # %bb.1:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 8)
-; GENERIC-NEXT:  .LBB25_2: # %entry
+; GENERIC-NEXT:  .LBB27_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB25_4
+; GENERIC-NEXT:    bf16 .LBB27_4
 ; GENERIC-NEXT:  # %bb.3:
 ; GENERIC-NEXT:    ld16.w a3, (sp, 12)
-; GENERIC-NEXT:  .LBB25_4: # %entry
+; GENERIC-NEXT:  .LBB27_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    mov16 a1, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -1037,15 +1090,15 @@ define i64 @selectRX_ne_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    movi16 a0, 1
 ; GENERIC-NEXT:    subu16 a0, a1
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB26_2
+; GENERIC-NEXT:    bf16 .LBB28_2
 ; GENERIC-NEXT:  # %bb.1:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 12)
-; GENERIC-NEXT:  .LBB26_2: # %entry
+; GENERIC-NEXT:  .LBB28_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB26_4
+; GENERIC-NEXT:    bf16 .LBB28_4
 ; GENERIC-NEXT:  # %bb.3:
 ; GENERIC-NEXT:    ld16.w a3, (sp, 16)
-; GENERIC-NEXT:  .LBB26_4: # %entry
+; GENERIC-NEXT:  .LBB28_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    mov16 a1, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -1076,15 +1129,15 @@ define i64 @selectC_ne_i64(i1 %c, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB27_2
+; GENERIC-NEXT:    bt16 .LBB29_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a1
-; GENERIC-NEXT:  .LBB27_2: # %entry
+; GENERIC-NEXT:  .LBB29_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB27_4
+; GENERIC-NEXT:    bf16 .LBB29_4
 ; GENERIC-NEXT:  # %bb.3:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 4)
-; GENERIC-NEXT:  .LBB27_4: # %entry
+; GENERIC-NEXT:  .LBB29_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    mov16 a1, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -1132,10 +1185,10 @@ define i16 @selectRR_ne_i16(i16 %x, i16 %y, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    movi16 a1, 1
 ; GENERIC-NEXT:    subu16 a1, a0
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB28_2
+; GENERIC-NEXT:    bt16 .LBB30_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB28_2: # %entry
+; GENERIC-NEXT:  .LBB30_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -1182,10 +1235,10 @@ define i16 @selectRI_ne_i16(i16 %x, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB29_2
+; GENERIC-NEXT:    bt16 .LBB31_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB29_2: # %entry
+; GENERIC-NEXT:  .LBB31_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -1236,10 +1289,10 @@ define i16 @selectRX_ne_i16(i16 %x, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB30_2
+; GENERIC-NEXT:    bt16 .LBB32_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB30_2: # %entry
+; GENERIC-NEXT:  .LBB32_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -1266,10 +1319,10 @@ define i16 @selectC_ne_i16(i1 %c, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB31_2
+; GENERIC-NEXT:    bt16 .LBB33_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB31_2: # %entry
+; GENERIC-NEXT:  .LBB33_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -1305,10 +1358,10 @@ define i8 @selectRR_ne_i8(i8 %x, i8 %y, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    movi16 a1, 1
 ; GENERIC-NEXT:    subu16 a1, a0
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB32_2
+; GENERIC-NEXT:    bt16 .LBB34_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB32_2: # %entry
+; GENERIC-NEXT:  .LBB34_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -1341,10 +1394,10 @@ define i8 @selectRI_ne_i8(i8 %x, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB33_2
+; GENERIC-NEXT:    bt16 .LBB35_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB33_2: # %entry
+; GENERIC-NEXT:  .LBB35_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -1376,10 +1429,10 @@ define i8 @selectRX_ne_i8(i8 %x, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB34_2
+; GENERIC-NEXT:    bt16 .LBB36_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB34_2: # %entry
+; GENERIC-NEXT:  .LBB36_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -1403,10 +1456,10 @@ define i8 @selectC_ne_i8(i1 %c, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB35_2
+; GENERIC-NEXT:    bt16 .LBB37_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB35_2: # %entry
+; GENERIC-NEXT:  .LBB37_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -1432,10 +1485,10 @@ define i1 @selectRR_ne_i1(i1 %x, i1 %y, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    xor16 a0, a1
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB36_2
+; GENERIC-NEXT:    bt16 .LBB38_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB36_2: # %entry
+; GENERIC-NEXT:  .LBB38_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -1459,10 +1512,10 @@ define i1 @selectRI_ne_i1(i1 %x, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB37_2
+; GENERIC-NEXT:    bt16 .LBB39_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB37_2: # %entry
+; GENERIC-NEXT:  .LBB39_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -1486,10 +1539,10 @@ define i1 @selectRX_ne_i1(i1 %x, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB38_2
+; GENERIC-NEXT:    bt16 .LBB40_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a1, a2
-; GENERIC-NEXT:  .LBB38_2: # %entry
+; GENERIC-NEXT:  .LBB40_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a1
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -1513,10 +1566,10 @@ define i1 @selectC_ne_i1(i1 %c, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB39_2
+; GENERIC-NEXT:    bt16 .LBB41_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB39_2: # %entry
+; GENERIC-NEXT:  .LBB41_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -1542,10 +1595,10 @@ define i32 @selectRR_ugt_i32(i32 %x, i32 %y, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    cmphs16 a0, a1
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB40_2
+; GENERIC-NEXT:    bt16 .LBB42_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB40_2: # %entry
+; GENERIC-NEXT:  .LBB42_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -1573,10 +1626,10 @@ define i32 @selectRI_ugt_i32(i32 %x, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    cmphs16 a3, a0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB41_2
+; GENERIC-NEXT:    bt16 .LBB43_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB41_2: # %entry
+; GENERIC-NEXT:  .LBB43_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -1617,10 +1670,10 @@ define i32 @selectRX_ugt_i32(i32 %x, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    cmphs16 l0, a0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB42_2
+; GENERIC-NEXT:    bt16 .LBB44_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB42_2: # %entry
+; GENERIC-NEXT:  .LBB44_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -1646,10 +1699,10 @@ define i32 @selectC_ugt_i32(i1 %c, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB43_2
+; GENERIC-NEXT:    bt16 .LBB45_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB43_2: # %entry
+; GENERIC-NEXT:  .LBB45_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -1698,18 +1751,18 @@ define i64 @selectRR_ugt_i64(i64 %x, i64 %y, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpne16 a3, a1
 ; GENERIC-NEXT:    mvcv16 a1
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB44_2
+; GENERIC-NEXT:    bt16 .LBB46_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a0, l0
-; GENERIC-NEXT:  .LBB44_2: # %entry
+; GENERIC-NEXT:  .LBB46_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB44_4
+; GENERIC-NEXT:    bt16 .LBB46_4
 ; GENERIC-NEXT:  # %bb.3: # %entry
 ; GENERIC-NEXT:    movi16 a0, 8
-; GENERIC-NEXT:    br32 .LBB44_5
-; GENERIC-NEXT:  .LBB44_4:
+; GENERIC-NEXT:    br32 .LBB46_5
+; GENERIC-NEXT:  .LBB46_4:
 ; GENERIC-NEXT:    movi16 a0, 16
-; GENERIC-NEXT:  .LBB44_5: # %entry
+; GENERIC-NEXT:  .LBB46_5: # %entry
 ; GENERIC-NEXT:    addu16 a0, sp
 ; GENERIC-NEXT:    mov16 a1, a0
 ; GENERIC-NEXT:    ld16.w a0, (a0, 0)
@@ -1763,32 +1816,32 @@ define i64 @selectRI_ugt_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmphs16 l0, a0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bf16 .LBB45_5
+; GENERIC-NEXT:    bf16 .LBB47_5
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB45_6
-; GENERIC-NEXT:  .LBB45_2: # %entry
+; GENERIC-NEXT:    bt16 .LBB47_6
+; GENERIC-NEXT:  .LBB47_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB45_4
-; GENERIC-NEXT:  .LBB45_3:
+; GENERIC-NEXT:    bf16 .LBB47_4
+; GENERIC-NEXT:  .LBB47_3:
 ; GENERIC-NEXT:    ld16.w a3, (sp, 12)
-; GENERIC-NEXT:  .LBB45_4: # %entry
+; GENERIC-NEXT:  .LBB47_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    mov16 a1, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
-; GENERIC-NEXT:  .LBB45_5: # %entry
+; GENERIC-NEXT:  .LBB47_5: # %entry
 ; GENERIC-NEXT:    movi16 a0, 1
 ; GENERIC-NEXT:    subu16 a0, a1
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB45_2
-; GENERIC-NEXT:  .LBB45_6:
+; GENERIC-NEXT:    bf16 .LBB47_2
+; GENERIC-NEXT:  .LBB47_6:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 8)
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB45_3
-; GENERIC-NEXT:    br32 .LBB45_4
+; GENERIC-NEXT:    bt16 .LBB47_3
+; GENERIC-NEXT:    br32 .LBB47_4
 entry:
   %icmp = icmp ugt i64 %x, 10
   %ret = select i1 %icmp, i64 %m, i64 %n
@@ -1846,16 +1899,16 @@ define i64 @selectRX_ugt_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmphs16 l1, a0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bf16 .LBB46_5
+; GENERIC-NEXT:    bf16 .LBB48_5
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB46_6
-; GENERIC-NEXT:  .LBB46_2: # %entry
+; GENERIC-NEXT:    bt16 .LBB48_6
+; GENERIC-NEXT:  .LBB48_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB46_4
-; GENERIC-NEXT:  .LBB46_3:
+; GENERIC-NEXT:    bf16 .LBB48_4
+; GENERIC-NEXT:  .LBB48_3:
 ; GENERIC-NEXT:    ld16.w a3, (sp, 16)
-; GENERIC-NEXT:  .LBB46_4: # %entry
+; GENERIC-NEXT:  .LBB48_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    mov16 a1, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -1863,16 +1916,16 @@ define i64 @selectRX_ugt_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    ld16.w l1, (sp, 4) # 4-byte Folded Reload
 ; GENERIC-NEXT:    addi16 sp, sp, 8
 ; GENERIC-NEXT:    rts16
-; GENERIC-NEXT:  .LBB46_5: # %entry
+; GENERIC-NEXT:  .LBB48_5: # %entry
 ; GENERIC-NEXT:    movi16 a0, 1
 ; GENERIC-NEXT:    subu16 a0, a1
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB46_2
-; GENERIC-NEXT:  .LBB46_6:
+; GENERIC-NEXT:    bf16 .LBB48_2
+; GENERIC-NEXT:  .LBB48_6:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 12)
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB46_3
-; GENERIC-NEXT:    br32 .LBB46_4
+; GENERIC-NEXT:    bt16 .LBB48_3
+; GENERIC-NEXT:    br32 .LBB48_4
 entry:
   %icmp = icmp ugt i64 %x, 47777777
   %ret = select i1 %icmp, i64 %m, i64 %n
@@ -1896,15 +1949,15 @@ define i64 @selectC_ugt_i64(i1 %c, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB47_2
+; GENERIC-NEXT:    bt16 .LBB49_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a1
-; GENERIC-NEXT:  .LBB47_2: # %entry
+; GENERIC-NEXT:  .LBB49_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB47_4
+; GENERIC-NEXT:    bf16 .LBB49_4
 ; GENERIC-NEXT:  # %bb.3:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 4)
-; GENERIC-NEXT:  .LBB47_4: # %entry
+; GENERIC-NEXT:  .LBB49_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    mov16 a1, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -1950,10 +2003,10 @@ define i16 @selectRR_ugt_i16(i16 %x, i16 %y, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    cmphs16 l2, a1
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB48_2
+; GENERIC-NEXT:    bt16 .LBB50_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB48_2: # %entry
+; GENERIC-NEXT:  .LBB50_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -2000,10 +2053,10 @@ define i16 @selectRI_ugt_i16(i16 %x, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    cmphs16 a0, l1
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB49_2
+; GENERIC-NEXT:    bt16 .LBB51_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB49_2: # %entry
+; GENERIC-NEXT:  .LBB51_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -2053,10 +2106,10 @@ define i16 @selectRX_ugt_i16(i16 %x, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    cmphs16 a3, l1
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB50_2
+; GENERIC-NEXT:    bt16 .LBB52_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB50_2: # %entry
+; GENERIC-NEXT:  .LBB52_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -2083,10 +2136,10 @@ define i16 @selectC_ugt_i16(i1 %c, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB51_2
+; GENERIC-NEXT:    bt16 .LBB53_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB51_2: # %entry
+; GENERIC-NEXT:  .LBB53_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -2120,10 +2173,10 @@ define i8 @selectRR_ugt_i8(i8 %x, i8 %y, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    cmphs16 a0, a1
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB52_2
+; GENERIC-NEXT:    bt16 .LBB54_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB52_2: # %entry
+; GENERIC-NEXT:  .LBB54_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -2156,10 +2209,10 @@ define i8 @selectRI_ugt_i8(i8 %x, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    cmphs16 a0, a3
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB53_2
+; GENERIC-NEXT:    bt16 .LBB55_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB53_2: # %entry
+; GENERIC-NEXT:  .LBB55_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -2190,10 +2243,10 @@ define i8 @selectRX_ugt_i8(i8 %x, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    cmphs16 a0, a3
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB54_2
+; GENERIC-NEXT:    bt16 .LBB56_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB54_2: # %entry
+; GENERIC-NEXT:  .LBB56_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -2217,10 +2270,10 @@ define i8 @selectC_ugt_i8(i1 %c, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB55_2
+; GENERIC-NEXT:    bt16 .LBB57_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB55_2: # %entry
+; GENERIC-NEXT:  .LBB57_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -2247,18 +2300,18 @@ define i1 @selectRR_ugt_i1(i1 %x, i1 %y, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
 ; GENERIC-NEXT:    mov16 a0, a2
-; GENERIC-NEXT:    bf16 .LBB56_3
+; GENERIC-NEXT:    bf16 .LBB58_3
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bf16 .LBB56_4
-; GENERIC-NEXT:  .LBB56_2: # %entry
+; GENERIC-NEXT:    bf16 .LBB58_4
+; GENERIC-NEXT:  .LBB58_2: # %entry
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
-; GENERIC-NEXT:  .LBB56_3: # %entry
+; GENERIC-NEXT:  .LBB58_3: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB56_2
-; GENERIC-NEXT:  .LBB56_4: # %entry
+; GENERIC-NEXT:    bt16 .LBB58_2
+; GENERIC-NEXT:  .LBB58_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -2282,10 +2335,10 @@ define i1 @selectRI_ugt_i1(i1 %x, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB57_2
+; GENERIC-NEXT:    bt16 .LBB59_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB57_2: # %entry
+; GENERIC-NEXT:  .LBB59_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -2329,10 +2382,10 @@ define i1 @selectC_ugt_i1(i1 %c, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB59_2
+; GENERIC-NEXT:    bt16 .LBB61_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB59_2: # %entry
+; GENERIC-NEXT:  .LBB61_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -2360,10 +2413,10 @@ define i32 @selectRR_uge_i32(i32 %x, i32 %y, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    movi16 a1, 1
 ; GENERIC-NEXT:    subu16 a1, a0
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB60_2
+; GENERIC-NEXT:    bt16 .LBB62_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB60_2: # %entry
+; GENERIC-NEXT:  .LBB62_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -2391,10 +2444,10 @@ define i32 @selectRI_uge_i32(i32 %x, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    cmphs16 a3, a0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB61_2
+; GENERIC-NEXT:    bt16 .LBB63_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB61_2: # %entry
+; GENERIC-NEXT:  .LBB63_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -2435,10 +2488,10 @@ define i32 @selectRX_uge_i32(i32 %x, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    cmphs16 l0, a0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB62_2
+; GENERIC-NEXT:    bt16 .LBB64_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB62_2: # %entry
+; GENERIC-NEXT:  .LBB64_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -2464,10 +2517,10 @@ define i32 @selectC_uge_i32(i1 %c, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB63_2
+; GENERIC-NEXT:    bt16 .LBB65_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB63_2: # %entry
+; GENERIC-NEXT:  .LBB65_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -2527,21 +2580,21 @@ define i64 @selectRR_uge_i64(i64 %x, i64 %y, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpne16 a3, a1
 ; GENERIC-NEXT:    mvcv16 a1
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB64_3
+; GENERIC-NEXT:    bt16 .LBB66_3
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    subu16 l0, l1
 ; GENERIC-NEXT:    btsti16 l0, 0
-; GENERIC-NEXT:    bf16 .LBB64_4
-; GENERIC-NEXT:  .LBB64_2:
+; GENERIC-NEXT:    bf16 .LBB66_4
+; GENERIC-NEXT:  .LBB66_2:
 ; GENERIC-NEXT:    movi16 a0, 20
-; GENERIC-NEXT:    br32 .LBB64_5
-; GENERIC-NEXT:  .LBB64_3:
+; GENERIC-NEXT:    br32 .LBB66_5
+; GENERIC-NEXT:  .LBB66_3:
 ; GENERIC-NEXT:    subu16 l0, a0
 ; GENERIC-NEXT:    btsti16 l0, 0
-; GENERIC-NEXT:    bt16 .LBB64_2
-; GENERIC-NEXT:  .LBB64_4: # %entry
+; GENERIC-NEXT:    bt16 .LBB66_2
+; GENERIC-NEXT:  .LBB66_4: # %entry
 ; GENERIC-NEXT:    movi16 a0, 12
-; GENERIC-NEXT:  .LBB64_5: # %entry
+; GENERIC-NEXT:  .LBB66_5: # %entry
 ; GENERIC-NEXT:    addu16 a0, sp
 ; GENERIC-NEXT:    mov16 a1, a0
 ; GENERIC-NEXT:    ld16.w a0, (a0, 0)
@@ -2596,32 +2649,32 @@ define i64 @selectRI_uge_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmphs16 l0, a0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bf16 .LBB65_5
+; GENERIC-NEXT:    bf16 .LBB67_5
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB65_6
-; GENERIC-NEXT:  .LBB65_2: # %entry
+; GENERIC-NEXT:    bt16 .LBB67_6
+; GENERIC-NEXT:  .LBB67_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB65_4
-; GENERIC-NEXT:  .LBB65_3:
+; GENERIC-NEXT:    bf16 .LBB67_4
+; GENERIC-NEXT:  .LBB67_3:
 ; GENERIC-NEXT:    ld16.w a3, (sp, 12)
-; GENERIC-NEXT:  .LBB65_4: # %entry
+; GENERIC-NEXT:  .LBB67_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    mov16 a1, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
-; GENERIC-NEXT:  .LBB65_5: # %entry
+; GENERIC-NEXT:  .LBB67_5: # %entry
 ; GENERIC-NEXT:    movi16 a0, 1
 ; GENERIC-NEXT:    subu16 a0, a1
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB65_2
-; GENERIC-NEXT:  .LBB65_6:
+; GENERIC-NEXT:    bf16 .LBB67_2
+; GENERIC-NEXT:  .LBB67_6:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 8)
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB65_3
-; GENERIC-NEXT:    br32 .LBB65_4
+; GENERIC-NEXT:    bt16 .LBB67_3
+; GENERIC-NEXT:    br32 .LBB67_4
 entry:
   %icmp = icmp uge i64 %x, 10
   %ret = select i1 %icmp, i64 %m, i64 %n
@@ -2679,16 +2732,16 @@ define i64 @selectRX_uge_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmphs16 l1, a0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bf16 .LBB66_5
+; GENERIC-NEXT:    bf16 .LBB68_5
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB66_6
-; GENERIC-NEXT:  .LBB66_2: # %entry
+; GENERIC-NEXT:    bt16 .LBB68_6
+; GENERIC-NEXT:  .LBB68_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB66_4
-; GENERIC-NEXT:  .LBB66_3:
+; GENERIC-NEXT:    bf16 .LBB68_4
+; GENERIC-NEXT:  .LBB68_3:
 ; GENERIC-NEXT:    ld16.w a3, (sp, 16)
-; GENERIC-NEXT:  .LBB66_4: # %entry
+; GENERIC-NEXT:  .LBB68_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    mov16 a1, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -2696,16 +2749,16 @@ define i64 @selectRX_uge_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    ld16.w l1, (sp, 4) # 4-byte Folded Reload
 ; GENERIC-NEXT:    addi16 sp, sp, 8
 ; GENERIC-NEXT:    rts16
-; GENERIC-NEXT:  .LBB66_5: # %entry
+; GENERIC-NEXT:  .LBB68_5: # %entry
 ; GENERIC-NEXT:    movi16 a0, 1
 ; GENERIC-NEXT:    subu16 a0, a1
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB66_2
-; GENERIC-NEXT:  .LBB66_6:
+; GENERIC-NEXT:    bf16 .LBB68_2
+; GENERIC-NEXT:  .LBB68_6:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 12)
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB66_3
-; GENERIC-NEXT:    br32 .LBB66_4
+; GENERIC-NEXT:    bt16 .LBB68_3
+; GENERIC-NEXT:    br32 .LBB68_4
 entry:
   %icmp = icmp uge i64 %x, 47777777
   %ret = select i1 %icmp, i64 %m, i64 %n
@@ -2729,15 +2782,15 @@ define i64 @selectC_uge_i64(i1 %c, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB67_2
+; GENERIC-NEXT:    bt16 .LBB69_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a1
-; GENERIC-NEXT:  .LBB67_2: # %entry
+; GENERIC-NEXT:  .LBB69_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB67_4
+; GENERIC-NEXT:    bf16 .LBB69_4
 ; GENERIC-NEXT:  # %bb.3:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 4)
-; GENERIC-NEXT:  .LBB67_4: # %entry
+; GENERIC-NEXT:  .LBB69_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    mov16 a1, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -2785,10 +2838,10 @@ define i16 @selectRR_uge_i16(i16 %x, i16 %y, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    movi16 a1, 1
 ; GENERIC-NEXT:    subu16 a1, a0
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB68_2
+; GENERIC-NEXT:    bt16 .LBB70_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB68_2: # %entry
+; GENERIC-NEXT:  .LBB70_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -2835,10 +2888,10 @@ define i16 @selectRI_uge_i16(i16 %x, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    cmphs16 a0, l1
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB69_2
+; GENERIC-NEXT:    bt16 .LBB71_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB69_2: # %entry
+; GENERIC-NEXT:  .LBB71_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -2888,10 +2941,10 @@ define i16 @selectRX_uge_i16(i16 %x, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    cmphs16 a3, l1
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB70_2
+; GENERIC-NEXT:    bt16 .LBB72_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB70_2: # %entry
+; GENERIC-NEXT:  .LBB72_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -2918,10 +2971,10 @@ define i16 @selectC_uge_i16(i1 %c, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB71_2
+; GENERIC-NEXT:    bt16 .LBB73_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB71_2: # %entry
+; GENERIC-NEXT:  .LBB73_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -2957,10 +3010,10 @@ define i8 @selectRR_uge_i8(i8 %x, i8 %y, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    movi16 a1, 1
 ; GENERIC-NEXT:    subu16 a1, a0
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB72_2
+; GENERIC-NEXT:    bt16 .LBB74_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB72_2: # %entry
+; GENERIC-NEXT:  .LBB74_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -2993,10 +3046,10 @@ define i8 @selectRI_uge_i8(i8 %x, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    cmphs16 a0, a3
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB73_2
+; GENERIC-NEXT:    bt16 .LBB75_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB73_2: # %entry
+; GENERIC-NEXT:  .LBB75_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -3027,10 +3080,10 @@ define i8 @selectRX_uge_i8(i8 %x, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    cmphs16 a0, a3
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB74_2
+; GENERIC-NEXT:    bt16 .LBB76_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB74_2: # %entry
+; GENERIC-NEXT:  .LBB76_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -3054,10 +3107,10 @@ define i8 @selectC_uge_i8(i1 %c, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB75_2
+; GENERIC-NEXT:    bt16 .LBB77_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB75_2: # %entry
+; GENERIC-NEXT:  .LBB77_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -3083,15 +3136,15 @@ define i1 @selectRR_uge_i1(i1 %x, i1 %y, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB76_2
+; GENERIC-NEXT:    bt16 .LBB78_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a3
-; GENERIC-NEXT:  .LBB76_2: # %entry
+; GENERIC-NEXT:  .LBB78_2: # %entry
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB76_4
+; GENERIC-NEXT:    bt16 .LBB78_4
 ; GENERIC-NEXT:  # %bb.3: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB76_4: # %entry
+; GENERIC-NEXT:  .LBB78_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -3135,10 +3188,10 @@ define i1 @selectRX_uge_i1(i1 %x, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB78_2
+; GENERIC-NEXT:    bt16 .LBB80_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB78_2: # %entry
+; GENERIC-NEXT:  .LBB80_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -3162,10 +3215,10 @@ define i1 @selectC_uge_i1(i1 %c, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB79_2
+; GENERIC-NEXT:    bt16 .LBB81_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB79_2: # %entry
+; GENERIC-NEXT:  .LBB81_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -3191,10 +3244,10 @@ define i32 @selectRR_ult_i32(i32 %x, i32 %y, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    cmphs16 a1, a0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB80_2
+; GENERIC-NEXT:    bt16 .LBB82_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB80_2: # %entry
+; GENERIC-NEXT:  .LBB82_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -3220,10 +3273,10 @@ define i32 @selectRI_ult_i32(i32 %x, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    cmphsi16 a0, 10
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB81_2
+; GENERIC-NEXT:    bt16 .LBB83_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB81_2: # %entry
+; GENERIC-NEXT:  .LBB83_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -3264,10 +3317,10 @@ define i32 @selectRX_ult_i32(i32 %x, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    cmphs16 a0, l0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB82_2
+; GENERIC-NEXT:    bt16 .LBB84_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB82_2: # %entry
+; GENERIC-NEXT:  .LBB84_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -3293,10 +3346,10 @@ define i32 @selectC_ult_i32(i1 %c, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB83_2
+; GENERIC-NEXT:    bt16 .LBB85_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB83_2: # %entry
+; GENERIC-NEXT:  .LBB85_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -3345,18 +3398,18 @@ define i64 @selectRR_ult_i64(i64 %x, i64 %y, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpne16 a3, a1
 ; GENERIC-NEXT:    mvcv16 a1
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB84_2
+; GENERIC-NEXT:    bt16 .LBB86_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a0, l0
-; GENERIC-NEXT:  .LBB84_2: # %entry
+; GENERIC-NEXT:  .LBB86_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB84_4
+; GENERIC-NEXT:    bt16 .LBB86_4
 ; GENERIC-NEXT:  # %bb.3: # %entry
 ; GENERIC-NEXT:    movi16 a0, 8
-; GENERIC-NEXT:    br32 .LBB84_5
-; GENERIC-NEXT:  .LBB84_4:
+; GENERIC-NEXT:    br32 .LBB86_5
+; GENERIC-NEXT:  .LBB86_4:
 ; GENERIC-NEXT:    movi16 a0, 16
-; GENERIC-NEXT:  .LBB84_5: # %entry
+; GENERIC-NEXT:  .LBB86_5: # %entry
 ; GENERIC-NEXT:    addu16 a0, sp
 ; GENERIC-NEXT:    mov16 a1, a0
 ; GENERIC-NEXT:    ld16.w a0, (a0, 0)
@@ -3408,29 +3461,29 @@ define i64 @selectRI_ult_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpnei16 a1, 0
 ; GENERIC-NEXT:    mvcv16 a1
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bf16 .LBB85_5
+; GENERIC-NEXT:    bf16 .LBB87_5
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB85_6
-; GENERIC-NEXT:  .LBB85_2: # %entry
+; GENERIC-NEXT:    bt16 .LBB87_6
+; GENERIC-NEXT:  .LBB87_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB85_4
-; GENERIC-NEXT:  .LBB85_3:
+; GENERIC-NEXT:    bf16 .LBB87_4
+; GENERIC-NEXT:  .LBB87_3:
 ; GENERIC-NEXT:    ld16.w a3, (sp, 8)
-; GENERIC-NEXT:  .LBB85_4: # %entry
+; GENERIC-NEXT:  .LBB87_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    mov16 a1, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
-; GENERIC-NEXT:  .LBB85_5: # %entry
+; GENERIC-NEXT:  .LBB87_5: # %entry
 ; GENERIC-NEXT:    movi16 a0, 0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB85_2
-; GENERIC-NEXT:  .LBB85_6:
+; GENERIC-NEXT:    bf16 .LBB87_2
+; GENERIC-NEXT:  .LBB87_6:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 4)
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB85_3
-; GENERIC-NEXT:    br32 .LBB85_4
+; GENERIC-NEXT:    bt16 .LBB87_3
+; GENERIC-NEXT:    br32 .LBB87_4
 entry:
   %icmp = icmp ult i64 %x, 10
   %ret = select i1 %icmp, i64 %m, i64 %n
@@ -3488,16 +3541,16 @@ define i64 @selectRX_ult_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpnei16 a1, 0
 ; GENERIC-NEXT:    mvcv16 a1
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bf16 .LBB86_5
+; GENERIC-NEXT:    bf16 .LBB88_5
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB86_6
-; GENERIC-NEXT:  .LBB86_2: # %entry
+; GENERIC-NEXT:    bt16 .LBB88_6
+; GENERIC-NEXT:  .LBB88_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB86_4
-; GENERIC-NEXT:  .LBB86_3:
+; GENERIC-NEXT:    bf16 .LBB88_4
+; GENERIC-NEXT:  .LBB88_3:
 ; GENERIC-NEXT:    ld16.w a3, (sp, 16)
-; GENERIC-NEXT:  .LBB86_4: # %entry
+; GENERIC-NEXT:  .LBB88_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    mov16 a1, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -3505,15 +3558,15 @@ define i64 @selectRX_ult_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    ld16.w l1, (sp, 4) # 4-byte Folded Reload
 ; GENERIC-NEXT:    addi16 sp, sp, 8
 ; GENERIC-NEXT:    rts16
-; GENERIC-NEXT:  .LBB86_5: # %entry
+; GENERIC-NEXT:  .LBB88_5: # %entry
 ; GENERIC-NEXT:    movi16 a0, 0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB86_2
-; GENERIC-NEXT:  .LBB86_6:
+; GENERIC-NEXT:    bf16 .LBB88_2
+; GENERIC-NEXT:  .LBB88_6:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 12)
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB86_3
-; GENERIC-NEXT:    br32 .LBB86_4
+; GENERIC-NEXT:    bt16 .LBB88_3
+; GENERIC-NEXT:    br32 .LBB88_4
 entry:
   %icmp = icmp ult i64 %x, 47777777
   %ret = select i1 %icmp, i64 %m, i64 %n
@@ -3537,15 +3590,15 @@ define i64 @selectC_ult_i64(i1 %c, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB87_2
+; GENERIC-NEXT:    bt16 .LBB89_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a1
-; GENERIC-NEXT:  .LBB87_2: # %entry
+; GENERIC-NEXT:  .LBB89_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB87_4
+; GENERIC-NEXT:    bf16 .LBB89_4
 ; GENERIC-NEXT:  # %bb.3:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 4)
-; GENERIC-NEXT:  .LBB87_4: # %entry
+; GENERIC-NEXT:  .LBB89_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    mov16 a1, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -3591,10 +3644,10 @@ define i16 @selectRR_ult_i16(i16 %x, i16 %y, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    cmphs16 l2, a0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB88_2
+; GENERIC-NEXT:    bt16 .LBB90_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB88_2: # %entry
+; GENERIC-NEXT:  .LBB90_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -3639,10 +3692,10 @@ define i16 @selectRI_ult_i16(i16 %x, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    cmphsi16 l1, 10
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB89_2
+; GENERIC-NEXT:    bt16 .LBB91_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB89_2: # %entry
+; GENERIC-NEXT:  .LBB91_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -3691,10 +3744,10 @@ define i16 @selectRX_ult_i16(i16 %x, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    cmphs16 l1, a3
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB90_2
+; GENERIC-NEXT:    bt16 .LBB92_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB90_2: # %entry
+; GENERIC-NEXT:  .LBB92_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -3721,10 +3774,10 @@ define i16 @selectC_ult_i16(i1 %c, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB91_2
+; GENERIC-NEXT:    bt16 .LBB93_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB91_2: # %entry
+; GENERIC-NEXT:  .LBB93_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -3758,10 +3811,10 @@ define i8 @selectRR_ult_i8(i8 %x, i8 %y, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    cmphs16 a1, a0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB92_2
+; GENERIC-NEXT:    bt16 .LBB94_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB92_2: # %entry
+; GENERIC-NEXT:  .LBB94_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -3792,10 +3845,10 @@ define i8 @selectRI_ult_i8(i8 %x, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    cmphsi16 a3, 10
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB93_2
+; GENERIC-NEXT:    bt16 .LBB95_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB93_2: # %entry
+; GENERIC-NEXT:  .LBB95_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -3825,10 +3878,10 @@ define i8 @selectRX_ult_i8(i8 %x, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    cmphs16 a3, a0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB94_2
+; GENERIC-NEXT:    bt16 .LBB96_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB94_2: # %entry
+; GENERIC-NEXT:  .LBB96_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -3852,10 +3905,10 @@ define i8 @selectC_ult_i8(i1 %c, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB95_2
+; GENERIC-NEXT:    bt16 .LBB97_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB95_2: # %entry
+; GENERIC-NEXT:  .LBB97_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -3886,15 +3939,15 @@ define i1 @selectRR_ult_i1(i1 %x, i1 %y, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    mov16 l0, a0
 ; GENERIC-NEXT:    btsti16 a1, 0
 ; GENERIC-NEXT:    mov16 a0, a2
-; GENERIC-NEXT:    bt16 .LBB96_2
+; GENERIC-NEXT:    bt16 .LBB98_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
-; GENERIC-NEXT:  .LBB96_2: # %entry
+; GENERIC-NEXT:  .LBB98_2: # %entry
 ; GENERIC-NEXT:    btsti16 l0, 0
-; GENERIC-NEXT:    bt16 .LBB96_4
+; GENERIC-NEXT:    bt16 .LBB98_4
 ; GENERIC-NEXT:  # %bb.3: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
-; GENERIC-NEXT:  .LBB96_4: # %entry
+; GENERIC-NEXT:  .LBB98_4: # %entry
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -3939,10 +3992,10 @@ define i1 @selectRX_ult_i1(i1 %x, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB98_2
+; GENERIC-NEXT:    bt16 .LBB100_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a1, a2
-; GENERIC-NEXT:  .LBB98_2: # %entry
+; GENERIC-NEXT:  .LBB100_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a1
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -3966,10 +4019,10 @@ define i1 @selectC_ult_i1(i1 %c, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB99_2
+; GENERIC-NEXT:    bt16 .LBB101_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB99_2: # %entry
+; GENERIC-NEXT:  .LBB101_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -3996,10 +4049,10 @@ define i32 @selectRR_ule_i32(i32 %x, i32 %y, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    movi16 a1, 1
 ; GENERIC-NEXT:    subu16 a1, a0
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB100_2
+; GENERIC-NEXT:    bt16 .LBB102_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB100_2: # %entry
+; GENERIC-NEXT:  .LBB102_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -4025,10 +4078,10 @@ define i32 @selectRI_ule_i32(i32 %x, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    cmphsi16 a0, 11
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB101_2
+; GENERIC-NEXT:    bt16 .LBB103_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB101_2: # %entry
+; GENERIC-NEXT:  .LBB103_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -4069,10 +4122,10 @@ define i32 @selectRX_ule_i32(i32 %x, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    cmphs16 a0, l0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB102_2
+; GENERIC-NEXT:    bt16 .LBB104_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB102_2: # %entry
+; GENERIC-NEXT:  .LBB104_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -4098,10 +4151,10 @@ define i32 @selectC_ule_i32(i1 %c, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB103_2
+; GENERIC-NEXT:    bt16 .LBB105_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB103_2: # %entry
+; GENERIC-NEXT:  .LBB105_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -4161,21 +4214,21 @@ define i64 @selectRR_ule_i64(i64 %x, i64 %y, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpne16 a3, a1
 ; GENERIC-NEXT:    mvcv16 a1
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB104_3
+; GENERIC-NEXT:    bt16 .LBB106_3
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    subu16 l0, l1
 ; GENERIC-NEXT:    btsti16 l0, 0
-; GENERIC-NEXT:    bf16 .LBB104_4
-; GENERIC-NEXT:  .LBB104_2:
+; GENERIC-NEXT:    bf16 .LBB106_4
+; GENERIC-NEXT:  .LBB106_2:
 ; GENERIC-NEXT:    movi16 a0, 20
-; GENERIC-NEXT:    br32 .LBB104_5
-; GENERIC-NEXT:  .LBB104_3:
+; GENERIC-NEXT:    br32 .LBB106_5
+; GENERIC-NEXT:  .LBB106_3:
 ; GENERIC-NEXT:    subu16 l0, a0
 ; GENERIC-NEXT:    btsti16 l0, 0
-; GENERIC-NEXT:    bt16 .LBB104_2
-; GENERIC-NEXT:  .LBB104_4: # %entry
+; GENERIC-NEXT:    bt16 .LBB106_2
+; GENERIC-NEXT:  .LBB106_4: # %entry
 ; GENERIC-NEXT:    movi16 a0, 12
-; GENERIC-NEXT:  .LBB104_5: # %entry
+; GENERIC-NEXT:  .LBB106_5: # %entry
 ; GENERIC-NEXT:    addu16 a0, sp
 ; GENERIC-NEXT:    mov16 a1, a0
 ; GENERIC-NEXT:    ld16.w a0, (a0, 0)
@@ -4228,29 +4281,29 @@ define i64 @selectRI_ule_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpnei16 a1, 0
 ; GENERIC-NEXT:    mvcv16 a1
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bf16 .LBB105_5
+; GENERIC-NEXT:    bf16 .LBB107_5
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB105_6
-; GENERIC-NEXT:  .LBB105_2: # %entry
+; GENERIC-NEXT:    bt16 .LBB107_6
+; GENERIC-NEXT:  .LBB107_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB105_4
-; GENERIC-NEXT:  .LBB105_3:
+; GENERIC-NEXT:    bf16 .LBB107_4
+; GENERIC-NEXT:  .LBB107_3:
 ; GENERIC-NEXT:    ld16.w a3, (sp, 8)
-; GENERIC-NEXT:  .LBB105_4: # %entry
+; GENERIC-NEXT:  .LBB107_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    mov16 a1, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
-; GENERIC-NEXT:  .LBB105_5: # %entry
+; GENERIC-NEXT:  .LBB107_5: # %entry
 ; GENERIC-NEXT:    movi16 a0, 0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB105_2
-; GENERIC-NEXT:  .LBB105_6:
+; GENERIC-NEXT:    bf16 .LBB107_2
+; GENERIC-NEXT:  .LBB107_6:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 4)
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB105_3
-; GENERIC-NEXT:    br32 .LBB105_4
+; GENERIC-NEXT:    bt16 .LBB107_3
+; GENERIC-NEXT:    br32 .LBB107_4
 entry:
   %icmp = icmp ule i64 %x, 10
   %ret = select i1 %icmp, i64 %m, i64 %n
@@ -4308,16 +4361,16 @@ define i64 @selectRX_ule_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpnei16 a1, 0
 ; GENERIC-NEXT:    mvcv16 a1
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bf16 .LBB106_5
+; GENERIC-NEXT:    bf16 .LBB108_5
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB106_6
-; GENERIC-NEXT:  .LBB106_2: # %entry
+; GENERIC-NEXT:    bt16 .LBB108_6
+; GENERIC-NEXT:  .LBB108_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB106_4
-; GENERIC-NEXT:  .LBB106_3:
+; GENERIC-NEXT:    bf16 .LBB108_4
+; GENERIC-NEXT:  .LBB108_3:
 ; GENERIC-NEXT:    ld16.w a3, (sp, 16)
-; GENERIC-NEXT:  .LBB106_4: # %entry
+; GENERIC-NEXT:  .LBB108_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    mov16 a1, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -4325,15 +4378,15 @@ define i64 @selectRX_ule_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    ld16.w l1, (sp, 4) # 4-byte Folded Reload
 ; GENERIC-NEXT:    addi16 sp, sp, 8
 ; GENERIC-NEXT:    rts16
-; GENERIC-NEXT:  .LBB106_5: # %entry
+; GENERIC-NEXT:  .LBB108_5: # %entry
 ; GENERIC-NEXT:    movi16 a0, 0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB106_2
-; GENERIC-NEXT:  .LBB106_6:
+; GENERIC-NEXT:    bf16 .LBB108_2
+; GENERIC-NEXT:  .LBB108_6:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 12)
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB106_3
-; GENERIC-NEXT:    br32 .LBB106_4
+; GENERIC-NEXT:    bt16 .LBB108_3
+; GENERIC-NEXT:    br32 .LBB108_4
 entry:
   %icmp = icmp ule i64 %x, 47777777
   %ret = select i1 %icmp, i64 %m, i64 %n
@@ -4357,15 +4410,15 @@ define i64 @selectC_ule_i64(i1 %c, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB107_2
+; GENERIC-NEXT:    bt16 .LBB109_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a1
-; GENERIC-NEXT:  .LBB107_2: # %entry
+; GENERIC-NEXT:  .LBB109_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB107_4
+; GENERIC-NEXT:    bf16 .LBB109_4
 ; GENERIC-NEXT:  # %bb.3:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 4)
-; GENERIC-NEXT:  .LBB107_4: # %entry
+; GENERIC-NEXT:  .LBB109_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    mov16 a1, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -4413,10 +4466,10 @@ define i16 @selectRR_ule_i16(i16 %x, i16 %y, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    movi16 a1, 1
 ; GENERIC-NEXT:    subu16 a1, a0
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB108_2
+; GENERIC-NEXT:    bt16 .LBB110_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB108_2: # %entry
+; GENERIC-NEXT:  .LBB110_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -4461,10 +4514,10 @@ define i16 @selectRI_ule_i16(i16 %x, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    cmphsi16 l1, 11
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB109_2
+; GENERIC-NEXT:    bt16 .LBB111_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB109_2: # %entry
+; GENERIC-NEXT:  .LBB111_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -4513,10 +4566,10 @@ define i16 @selectRX_ule_i16(i16 %x, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    cmphs16 l1, a3
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB110_2
+; GENERIC-NEXT:    bt16 .LBB112_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB110_2: # %entry
+; GENERIC-NEXT:  .LBB112_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -4543,10 +4596,10 @@ define i16 @selectC_ule_i16(i1 %c, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB111_2
+; GENERIC-NEXT:    bt16 .LBB113_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB111_2: # %entry
+; GENERIC-NEXT:  .LBB113_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -4582,10 +4635,10 @@ define i8 @selectRR_ule_i8(i8 %x, i8 %y, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    movi16 a1, 1
 ; GENERIC-NEXT:    subu16 a1, a0
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB112_2
+; GENERIC-NEXT:    bt16 .LBB114_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB112_2: # %entry
+; GENERIC-NEXT:  .LBB114_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -4616,10 +4669,10 @@ define i8 @selectRI_ule_i8(i8 %x, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    cmphsi16 a3, 11
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB113_2
+; GENERIC-NEXT:    bt16 .LBB115_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB113_2: # %entry
+; GENERIC-NEXT:  .LBB115_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -4649,10 +4702,10 @@ define i8 @selectRX_ule_i8(i8 %x, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    cmphs16 a3, a0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB114_2
+; GENERIC-NEXT:    bt16 .LBB116_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB114_2: # %entry
+; GENERIC-NEXT:  .LBB116_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -4676,10 +4729,10 @@ define i8 @selectC_ule_i8(i1 %c, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB115_2
+; GENERIC-NEXT:    bt16 .LBB117_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB115_2: # %entry
+; GENERIC-NEXT:  .LBB117_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -4706,15 +4759,15 @@ define i1 @selectRR_ule_i1(i1 %x, i1 %y, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB116_2
+; GENERIC-NEXT:    bt16 .LBB118_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a3
-; GENERIC-NEXT:  .LBB116_2: # %entry
+; GENERIC-NEXT:  .LBB118_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB116_4
+; GENERIC-NEXT:    bt16 .LBB118_4
 ; GENERIC-NEXT:  # %bb.3: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB116_4: # %entry
+; GENERIC-NEXT:  .LBB118_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -4738,10 +4791,10 @@ define i1 @selectRI_ule_i1(i1 %x, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB117_2
+; GENERIC-NEXT:    bt16 .LBB119_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a1, a2
-; GENERIC-NEXT:  .LBB117_2: # %entry
+; GENERIC-NEXT:  .LBB119_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a1
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -4785,10 +4838,10 @@ define i1 @selectC_ule_i1(i1 %c, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB119_2
+; GENERIC-NEXT:    bt16 .LBB121_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB119_2: # %entry
+; GENERIC-NEXT:  .LBB121_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -4816,10 +4869,10 @@ define i32 @selectRR_sgt_i32(i32 %x, i32 %y, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    movi16 a1, 1
 ; GENERIC-NEXT:    subu16 a1, a0
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB120_2
+; GENERIC-NEXT:    bt16 .LBB122_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB120_2: # %entry
+; GENERIC-NEXT:  .LBB122_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -4849,10 +4902,10 @@ define i32 @selectRI_sgt_i32(i32 %x, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB121_2
+; GENERIC-NEXT:    bt16 .LBB123_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB121_2: # %entry
+; GENERIC-NEXT:  .LBB123_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -4895,10 +4948,10 @@ define i32 @selectRX_sgt_i32(i32 %x, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB122_2
+; GENERIC-NEXT:    bt16 .LBB124_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB122_2: # %entry
+; GENERIC-NEXT:  .LBB124_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -4924,10 +4977,10 @@ define i32 @selectC_sgt_i32(i1 %c, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB123_2
+; GENERIC-NEXT:    bt16 .LBB125_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB123_2: # %entry
+; GENERIC-NEXT:  .LBB125_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -4980,19 +5033,19 @@ define i64 @selectRR_sgt_i64(i64 %x, i64 %y, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpne16 a3, a1
 ; GENERIC-NEXT:    mvcv16 a1
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB124_2
+; GENERIC-NEXT:    bt16 .LBB126_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    movi16 a0, 1
 ; GENERIC-NEXT:    subu16 a0, l0
-; GENERIC-NEXT:  .LBB124_2: # %entry
+; GENERIC-NEXT:  .LBB126_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB124_4
+; GENERIC-NEXT:    bt16 .LBB126_4
 ; GENERIC-NEXT:  # %bb.3: # %entry
 ; GENERIC-NEXT:    movi16 a0, 8
-; GENERIC-NEXT:    br32 .LBB124_5
-; GENERIC-NEXT:  .LBB124_4:
+; GENERIC-NEXT:    br32 .LBB126_5
+; GENERIC-NEXT:  .LBB126_4:
 ; GENERIC-NEXT:    movi16 a0, 16
-; GENERIC-NEXT:  .LBB124_5: # %entry
+; GENERIC-NEXT:  .LBB126_5: # %entry
 ; GENERIC-NEXT:    addu16 a0, sp
 ; GENERIC-NEXT:    mov16 a1, a0
 ; GENERIC-NEXT:    ld16.w a0, (a0, 0)
@@ -5063,16 +5116,16 @@ define i64 @selectRI_sgt_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpnei16 a1, 0
 ; GENERIC-NEXT:    mvcv16 a1
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bf16 .LBB125_5
+; GENERIC-NEXT:    bf16 .LBB127_5
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB125_6
-; GENERIC-NEXT:  .LBB125_2: # %entry
+; GENERIC-NEXT:    bt16 .LBB127_6
+; GENERIC-NEXT:  .LBB127_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB125_4
-; GENERIC-NEXT:  .LBB125_3:
+; GENERIC-NEXT:    bf16 .LBB127_4
+; GENERIC-NEXT:  .LBB127_3:
 ; GENERIC-NEXT:    ld16.w a3, (sp, 16)
-; GENERIC-NEXT:  .LBB125_4: # %entry
+; GENERIC-NEXT:  .LBB127_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    mov16 a1, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -5080,16 +5133,16 @@ define i64 @selectRI_sgt_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    ld16.w l1, (sp, 4) # 4-byte Folded Reload
 ; GENERIC-NEXT:    addi16 sp, sp, 8
 ; GENERIC-NEXT:    rts16
-; GENERIC-NEXT:  .LBB125_5: # %entry
+; GENERIC-NEXT:  .LBB127_5: # %entry
 ; GENERIC-NEXT:    movi16 a0, 1
 ; GENERIC-NEXT:    subu16 a0, l0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB125_2
-; GENERIC-NEXT:  .LBB125_6:
+; GENERIC-NEXT:    bf16 .LBB127_2
+; GENERIC-NEXT:  .LBB127_6:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 12)
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB125_3
-; GENERIC-NEXT:    br32 .LBB125_4
+; GENERIC-NEXT:    bt16 .LBB127_3
+; GENERIC-NEXT:    br32 .LBB127_4
 entry:
   %icmp = icmp sgt i64 %x, 10
   %ret = select i1 %icmp, i64 %m, i64 %n
@@ -5164,16 +5217,16 @@ define i64 @selectRX_sgt_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpnei16 a1, 0
 ; GENERIC-NEXT:    mvcv16 a1
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bf16 .LBB126_5
+; GENERIC-NEXT:    bf16 .LBB128_5
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB126_6
-; GENERIC-NEXT:  .LBB126_2: # %entry
+; GENERIC-NEXT:    bt16 .LBB128_6
+; GENERIC-NEXT:  .LBB128_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB126_4
-; GENERIC-NEXT:  .LBB126_3:
+; GENERIC-NEXT:    bf16 .LBB128_4
+; GENERIC-NEXT:  .LBB128_3:
 ; GENERIC-NEXT:    ld16.w a3, (sp, 20)
-; GENERIC-NEXT:  .LBB126_4: # %entry
+; GENERIC-NEXT:  .LBB128_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    mov16 a1, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -5182,16 +5235,16 @@ define i64 @selectRX_sgt_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    ld16.w l2, (sp, 8) # 4-byte Folded Reload
 ; GENERIC-NEXT:    addi16 sp, sp, 12
 ; GENERIC-NEXT:    rts16
-; GENERIC-NEXT:  .LBB126_5: # %entry
+; GENERIC-NEXT:  .LBB128_5: # %entry
 ; GENERIC-NEXT:    movi16 a0, 1
 ; GENERIC-NEXT:    subu16 a0, l0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB126_2
-; GENERIC-NEXT:  .LBB126_6:
+; GENERIC-NEXT:    bf16 .LBB128_2
+; GENERIC-NEXT:  .LBB128_6:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 16)
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB126_3
-; GENERIC-NEXT:    br32 .LBB126_4
+; GENERIC-NEXT:    bt16 .LBB128_3
+; GENERIC-NEXT:    br32 .LBB128_4
 entry:
   %icmp = icmp sgt i64 %x, 47777777
   %ret = select i1 %icmp, i64 %m, i64 %n
@@ -5215,15 +5268,15 @@ define i64 @selectC_sgt_i64(i1 %c, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB127_2
+; GENERIC-NEXT:    bt16 .LBB129_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a1
-; GENERIC-NEXT:  .LBB127_2: # %entry
+; GENERIC-NEXT:  .LBB129_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB127_4
+; GENERIC-NEXT:    bf16 .LBB129_4
 ; GENERIC-NEXT:  # %bb.3:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 4)
-; GENERIC-NEXT:  .LBB127_4: # %entry
+; GENERIC-NEXT:  .LBB129_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    mov16 a1, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -5256,10 +5309,10 @@ define i16 @selectRR_sgt_i16(i16 %x, i16 %y, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    movi16 a1, 1
 ; GENERIC-NEXT:    subu16 a1, a0
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB128_2
+; GENERIC-NEXT:    bt16 .LBB130_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB128_2: # %entry
+; GENERIC-NEXT:  .LBB130_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -5291,10 +5344,10 @@ define i16 @selectRI_sgt_i16(i16 %x, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB129_2
+; GENERIC-NEXT:    bt16 .LBB131_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB129_2: # %entry
+; GENERIC-NEXT:  .LBB131_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -5337,10 +5390,10 @@ define i16 @selectRX_sgt_i16(i16 %x, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB130_2
+; GENERIC-NEXT:    bt16 .LBB132_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB130_2: # %entry
+; GENERIC-NEXT:  .LBB132_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -5366,10 +5419,10 @@ define i16 @selectC_sgt_i16(i1 %c, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB131_2
+; GENERIC-NEXT:    bt16 .LBB133_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB131_2: # %entry
+; GENERIC-NEXT:  .LBB133_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -5401,10 +5454,10 @@ define i8 @selectRR_sgt_i8(i8 %x, i8 %y, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    movi16 a1, 1
 ; GENERIC-NEXT:    subu16 a1, a0
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB132_2
+; GENERIC-NEXT:    bt16 .LBB134_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB132_2: # %entry
+; GENERIC-NEXT:  .LBB134_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -5436,10 +5489,10 @@ define i8 @selectRI_sgt_i8(i8 %x, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB133_2
+; GENERIC-NEXT:    bt16 .LBB135_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB133_2: # %entry
+; GENERIC-NEXT:  .LBB135_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -5484,10 +5537,10 @@ define i8 @selectRX_sgt_i8(i8 %x, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB134_2
+; GENERIC-NEXT:    bt16 .LBB136_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB134_2: # %entry
+; GENERIC-NEXT:  .LBB136_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -5514,10 +5567,10 @@ define i8 @selectC_sgt_i8(i1 %c, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB135_2
+; GENERIC-NEXT:    bt16 .LBB137_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB135_2: # %entry
+; GENERIC-NEXT:  .LBB137_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -5548,15 +5601,15 @@ define i1 @selectRR_sgt_i1(i1 %x, i1 %y, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    mov16 l0, a0
 ; GENERIC-NEXT:    btsti16 a1, 0
 ; GENERIC-NEXT:    mov16 a0, a2
-; GENERIC-NEXT:    bt16 .LBB136_2
+; GENERIC-NEXT:    bt16 .LBB138_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
-; GENERIC-NEXT:  .LBB136_2: # %entry
+; GENERIC-NEXT:  .LBB138_2: # %entry
 ; GENERIC-NEXT:    btsti16 l0, 0
-; GENERIC-NEXT:    bt16 .LBB136_4
+; GENERIC-NEXT:    bt16 .LBB138_4
 ; GENERIC-NEXT:  # %bb.3: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
-; GENERIC-NEXT:  .LBB136_4: # %entry
+; GENERIC-NEXT:  .LBB138_4: # %entry
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -5601,10 +5654,10 @@ define i1 @selectRX_sgt_i1(i1 %x, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB138_2
+; GENERIC-NEXT:    bt16 .LBB140_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a1, a2
-; GENERIC-NEXT:  .LBB138_2: # %entry
+; GENERIC-NEXT:  .LBB140_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a1
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -5628,10 +5681,10 @@ define i1 @selectC_sgt_i1(i1 %c, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB139_2
+; GENERIC-NEXT:    bt16 .LBB141_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB139_2: # %entry
+; GENERIC-NEXT:  .LBB141_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -5657,10 +5710,10 @@ define i32 @selectRR_sge_i32(i32 %x, i32 %y, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    cmplt16 a1, a0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB140_2
+; GENERIC-NEXT:    bt16 .LBB142_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB140_2: # %entry
+; GENERIC-NEXT:  .LBB142_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -5690,10 +5743,10 @@ define i32 @selectRI_sge_i32(i32 %x, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB141_2
+; GENERIC-NEXT:    bt16 .LBB143_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB141_2: # %entry
+; GENERIC-NEXT:  .LBB143_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -5736,10 +5789,10 @@ define i32 @selectRX_sge_i32(i32 %x, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB142_2
+; GENERIC-NEXT:    bt16 .LBB144_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB142_2: # %entry
+; GENERIC-NEXT:  .LBB144_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -5765,10 +5818,10 @@ define i32 @selectC_sge_i32(i1 %c, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB143_2
+; GENERIC-NEXT:    bt16 .LBB145_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB143_2: # %entry
+; GENERIC-NEXT:  .LBB145_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -5818,19 +5871,19 @@ define i64 @selectRR_sge_i64(i64 %x, i64 %y, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpne16 a3, a1
 ; GENERIC-NEXT:    mvcv16 a1
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bf16 .LBB144_2
+; GENERIC-NEXT:    bf16 .LBB146_2
 ; GENERIC-NEXT:  # %bb.1:
 ; GENERIC-NEXT:    movi16 a0, 1
 ; GENERIC-NEXT:    subu16 a0, a2
-; GENERIC-NEXT:  .LBB144_2: # %entry
+; GENERIC-NEXT:  .LBB146_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB144_4
+; GENERIC-NEXT:    bt16 .LBB146_4
 ; GENERIC-NEXT:  # %bb.3: # %entry
 ; GENERIC-NEXT:    movi16 a0, 4
-; GENERIC-NEXT:    br32 .LBB144_5
-; GENERIC-NEXT:  .LBB144_4:
+; GENERIC-NEXT:    br32 .LBB146_5
+; GENERIC-NEXT:  .LBB146_4:
 ; GENERIC-NEXT:    movi16 a0, 12
-; GENERIC-NEXT:  .LBB144_5: # %entry
+; GENERIC-NEXT:  .LBB146_5: # %entry
 ; GENERIC-NEXT:    addu16 a0, sp
 ; GENERIC-NEXT:    mov16 a1, a0
 ; GENERIC-NEXT:    ld16.w a0, (a0, 0)
@@ -5899,16 +5952,16 @@ define i64 @selectRI_sge_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpnei16 a1, 0
 ; GENERIC-NEXT:    mvcv16 a1
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bf16 .LBB145_5
+; GENERIC-NEXT:    bf16 .LBB147_5
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB145_6
-; GENERIC-NEXT:  .LBB145_2: # %entry
+; GENERIC-NEXT:    bt16 .LBB147_6
+; GENERIC-NEXT:  .LBB147_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB145_4
-; GENERIC-NEXT:  .LBB145_3:
+; GENERIC-NEXT:    bf16 .LBB147_4
+; GENERIC-NEXT:  .LBB147_3:
 ; GENERIC-NEXT:    ld16.w a3, (sp, 16)
-; GENERIC-NEXT:  .LBB145_4: # %entry
+; GENERIC-NEXT:  .LBB147_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    mov16 a1, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -5916,16 +5969,16 @@ define i64 @selectRI_sge_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    ld16.w l1, (sp, 4) # 4-byte Folded Reload
 ; GENERIC-NEXT:    addi16 sp, sp, 8
 ; GENERIC-NEXT:    rts16
-; GENERIC-NEXT:  .LBB145_5: # %entry
+; GENERIC-NEXT:  .LBB147_5: # %entry
 ; GENERIC-NEXT:    movi16 a0, 1
 ; GENERIC-NEXT:    subu16 a0, l0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB145_2
-; GENERIC-NEXT:  .LBB145_6:
+; GENERIC-NEXT:    bf16 .LBB147_2
+; GENERIC-NEXT:  .LBB147_6:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 12)
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB145_3
-; GENERIC-NEXT:    br32 .LBB145_4
+; GENERIC-NEXT:    bt16 .LBB147_3
+; GENERIC-NEXT:    br32 .LBB147_4
 entry:
   %icmp = icmp sge i64 %x, 10
   %ret = select i1 %icmp, i64 %m, i64 %n
@@ -6000,16 +6053,16 @@ define i64 @selectRX_sge_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpnei16 a1, 0
 ; GENERIC-NEXT:    mvcv16 a1
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bf16 .LBB146_5
+; GENERIC-NEXT:    bf16 .LBB148_5
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB146_6
-; GENERIC-NEXT:  .LBB146_2: # %entry
+; GENERIC-NEXT:    bt16 .LBB148_6
+; GENERIC-NEXT:  .LBB148_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB146_4
-; GENERIC-NEXT:  .LBB146_3:
+; GENERIC-NEXT:    bf16 .LBB148_4
+; GENERIC-NEXT:  .LBB148_3:
 ; GENERIC-NEXT:    ld16.w a3, (sp, 20)
-; GENERIC-NEXT:  .LBB146_4: # %entry
+; GENERIC-NEXT:  .LBB148_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    mov16 a1, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -6018,16 +6071,16 @@ define i64 @selectRX_sge_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    ld16.w l2, (sp, 8) # 4-byte Folded Reload
 ; GENERIC-NEXT:    addi16 sp, sp, 12
 ; GENERIC-NEXT:    rts16
-; GENERIC-NEXT:  .LBB146_5: # %entry
+; GENERIC-NEXT:  .LBB148_5: # %entry
 ; GENERIC-NEXT:    movi16 a0, 1
 ; GENERIC-NEXT:    subu16 a0, l0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB146_2
-; GENERIC-NEXT:  .LBB146_6:
+; GENERIC-NEXT:    bf16 .LBB148_2
+; GENERIC-NEXT:  .LBB148_6:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 16)
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB146_3
-; GENERIC-NEXT:    br32 .LBB146_4
+; GENERIC-NEXT:    bt16 .LBB148_3
+; GENERIC-NEXT:    br32 .LBB148_4
 entry:
   %icmp = icmp sge i64 %x, 47777777
   %ret = select i1 %icmp, i64 %m, i64 %n
@@ -6051,15 +6104,15 @@ define i64 @selectC_sge_i64(i1 %c, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB147_2
+; GENERIC-NEXT:    bt16 .LBB149_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a1
-; GENERIC-NEXT:  .LBB147_2: # %entry
+; GENERIC-NEXT:  .LBB149_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB147_4
+; GENERIC-NEXT:    bf16 .LBB149_4
 ; GENERIC-NEXT:  # %bb.3:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 4)
-; GENERIC-NEXT:  .LBB147_4: # %entry
+; GENERIC-NEXT:  .LBB149_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    mov16 a1, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -6090,10 +6143,10 @@ define i16 @selectRR_sge_i16(i16 %x, i16 %y, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    cmplt16 a1, a0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB148_2
+; GENERIC-NEXT:    bt16 .LBB150_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB148_2: # %entry
+; GENERIC-NEXT:  .LBB150_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -6125,10 +6178,10 @@ define i16 @selectRI_sge_i16(i16 %x, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB149_2
+; GENERIC-NEXT:    bt16 .LBB151_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB149_2: # %entry
+; GENERIC-NEXT:  .LBB151_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -6171,10 +6224,10 @@ define i16 @selectRX_sge_i16(i16 %x, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB150_2
+; GENERIC-NEXT:    bt16 .LBB152_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB150_2: # %entry
+; GENERIC-NEXT:  .LBB152_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -6200,10 +6253,10 @@ define i16 @selectC_sge_i16(i1 %c, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB151_2
+; GENERIC-NEXT:    bt16 .LBB153_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB151_2: # %entry
+; GENERIC-NEXT:  .LBB153_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -6233,10 +6286,10 @@ define i8 @selectRR_sge_i8(i8 %x, i8 %y, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    cmplt16 a1, a0
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB152_2
+; GENERIC-NEXT:    bt16 .LBB154_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB152_2: # %entry
+; GENERIC-NEXT:  .LBB154_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -6268,10 +6321,10 @@ define i8 @selectRI_sge_i8(i8 %x, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB153_2
+; GENERIC-NEXT:    bt16 .LBB155_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB153_2: # %entry
+; GENERIC-NEXT:  .LBB155_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -6316,10 +6369,10 @@ define i8 @selectRX_sge_i8(i8 %x, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB154_2
+; GENERIC-NEXT:    bt16 .LBB156_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB154_2: # %entry
+; GENERIC-NEXT:  .LBB156_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -6346,10 +6399,10 @@ define i8 @selectC_sge_i8(i1 %c, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB155_2
+; GENERIC-NEXT:    bt16 .LBB157_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB155_2: # %entry
+; GENERIC-NEXT:  .LBB157_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -6376,15 +6429,15 @@ define i1 @selectRR_sge_i1(i1 %x, i1 %y, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB156_2
+; GENERIC-NEXT:    bt16 .LBB158_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a3
-; GENERIC-NEXT:  .LBB156_2: # %entry
+; GENERIC-NEXT:  .LBB158_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB156_4
+; GENERIC-NEXT:    bt16 .LBB158_4
 ; GENERIC-NEXT:  # %bb.3: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB156_4: # %entry
+; GENERIC-NEXT:  .LBB158_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -6408,10 +6461,10 @@ define i1 @selectRI_sge_i1(i1 %x, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB157_2
+; GENERIC-NEXT:    bt16 .LBB159_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a1, a2
-; GENERIC-NEXT:  .LBB157_2: # %entry
+; GENERIC-NEXT:  .LBB159_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a1
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -6455,10 +6508,10 @@ define i1 @selectC_sge_i1(i1 %c, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB159_2
+; GENERIC-NEXT:    bt16 .LBB161_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB159_2: # %entry
+; GENERIC-NEXT:  .LBB161_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -6486,10 +6539,10 @@ define i32 @selectRR_slt_i32(i32 %x, i32 %y, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    movi16 a1, 1
 ; GENERIC-NEXT:    subu16 a1, a0
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB160_2
+; GENERIC-NEXT:    bt16 .LBB162_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB160_2: # %entry
+; GENERIC-NEXT:  .LBB162_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -6517,10 +6570,10 @@ define i32 @selectRI_slt_i32(i32 %x, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB161_2
+; GENERIC-NEXT:    bt16 .LBB163_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB161_2: # %entry
+; GENERIC-NEXT:  .LBB163_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -6563,10 +6616,10 @@ define i32 @selectRX_slt_i32(i32 %x, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB162_2
+; GENERIC-NEXT:    bt16 .LBB164_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB162_2: # %entry
+; GENERIC-NEXT:  .LBB164_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -6592,10 +6645,10 @@ define i32 @selectC_slt_i32(i1 %c, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB163_2
+; GENERIC-NEXT:    bt16 .LBB165_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB163_2: # %entry
+; GENERIC-NEXT:  .LBB165_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -6648,19 +6701,19 @@ define i64 @selectRR_slt_i64(i64 %x, i64 %y, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpne16 a3, a1
 ; GENERIC-NEXT:    mvcv16 a1
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB164_2
+; GENERIC-NEXT:    bt16 .LBB166_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    movi16 a0, 1
 ; GENERIC-NEXT:    subu16 a0, l0
-; GENERIC-NEXT:  .LBB164_2: # %entry
+; GENERIC-NEXT:  .LBB166_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB164_4
+; GENERIC-NEXT:    bt16 .LBB166_4
 ; GENERIC-NEXT:  # %bb.3: # %entry
 ; GENERIC-NEXT:    movi16 a0, 8
-; GENERIC-NEXT:    br32 .LBB164_5
-; GENERIC-NEXT:  .LBB164_4:
+; GENERIC-NEXT:    br32 .LBB166_5
+; GENERIC-NEXT:  .LBB166_4:
 ; GENERIC-NEXT:    movi16 a0, 16
-; GENERIC-NEXT:  .LBB164_5: # %entry
+; GENERIC-NEXT:  .LBB166_5: # %entry
 ; GENERIC-NEXT:    addu16 a0, sp
 ; GENERIC-NEXT:    mov16 a1, a0
 ; GENERIC-NEXT:    ld16.w a0, (a0, 0)
@@ -6727,32 +6780,32 @@ define i64 @selectRI_slt_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpnei16 a1, 0
 ; GENERIC-NEXT:    mvcv16 a1
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bf16 .LBB165_5
+; GENERIC-NEXT:    bf16 .LBB167_5
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB165_6
-; GENERIC-NEXT:  .LBB165_2: # %entry
+; GENERIC-NEXT:    bt16 .LBB167_6
+; GENERIC-NEXT:  .LBB167_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB165_4
-; GENERIC-NEXT:  .LBB165_3:
+; GENERIC-NEXT:    bf16 .LBB167_4
+; GENERIC-NEXT:  .LBB167_3:
 ; GENERIC-NEXT:    ld16.w a3, (sp, 12)
-; GENERIC-NEXT:  .LBB165_4: # %entry
+; GENERIC-NEXT:  .LBB167_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    mov16 a1, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
-; GENERIC-NEXT:  .LBB165_5: # %entry
+; GENERIC-NEXT:  .LBB167_5: # %entry
 ; GENERIC-NEXT:    movi16 a0, 1
 ; GENERIC-NEXT:    subu16 a0, l0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB165_2
-; GENERIC-NEXT:  .LBB165_6:
+; GENERIC-NEXT:    bf16 .LBB167_2
+; GENERIC-NEXT:  .LBB167_6:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 8)
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB165_3
-; GENERIC-NEXT:    br32 .LBB165_4
+; GENERIC-NEXT:    bt16 .LBB167_3
+; GENERIC-NEXT:    br32 .LBB167_4
 entry:
   %icmp = icmp slt i64 %x, 10
   %ret = select i1 %icmp, i64 %m, i64 %n
@@ -6827,16 +6880,16 @@ define i64 @selectRX_slt_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpnei16 a1, 0
 ; GENERIC-NEXT:    mvcv16 a1
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bf16 .LBB166_5
+; GENERIC-NEXT:    bf16 .LBB168_5
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB166_6
-; GENERIC-NEXT:  .LBB166_2: # %entry
+; GENERIC-NEXT:    bt16 .LBB168_6
+; GENERIC-NEXT:  .LBB168_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB166_4
-; GENERIC-NEXT:  .LBB166_3:
+; GENERIC-NEXT:    bf16 .LBB168_4
+; GENERIC-NEXT:  .LBB168_3:
 ; GENERIC-NEXT:    ld16.w a3, (sp, 20)
-; GENERIC-NEXT:  .LBB166_4: # %entry
+; GENERIC-NEXT:  .LBB168_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    mov16 a1, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -6845,16 +6898,16 @@ define i64 @selectRX_slt_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    ld16.w l2, (sp, 8) # 4-byte Folded Reload
 ; GENERIC-NEXT:    addi16 sp, sp, 12
 ; GENERIC-NEXT:    rts16
-; GENERIC-NEXT:  .LBB166_5: # %entry
+; GENERIC-NEXT:  .LBB168_5: # %entry
 ; GENERIC-NEXT:    movi16 a0, 1
 ; GENERIC-NEXT:    subu16 a0, l0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB166_2
-; GENERIC-NEXT:  .LBB166_6:
+; GENERIC-NEXT:    bf16 .LBB168_2
+; GENERIC-NEXT:  .LBB168_6:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 16)
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB166_3
-; GENERIC-NEXT:    br32 .LBB166_4
+; GENERIC-NEXT:    bt16 .LBB168_3
+; GENERIC-NEXT:    br32 .LBB168_4
 entry:
   %icmp = icmp slt i64 %x, 47777777
   %ret = select i1 %icmp, i64 %m, i64 %n
@@ -6878,15 +6931,15 @@ define i64 @selectC_slt_i64(i1 %c, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB167_2
+; GENERIC-NEXT:    bt16 .LBB169_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a1
-; GENERIC-NEXT:  .LBB167_2: # %entry
+; GENERIC-NEXT:  .LBB169_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB167_4
+; GENERIC-NEXT:    bf16 .LBB169_4
 ; GENERIC-NEXT:  # %bb.3:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 4)
-; GENERIC-NEXT:  .LBB167_4: # %entry
+; GENERIC-NEXT:  .LBB169_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    mov16 a1, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -6919,10 +6972,10 @@ define i16 @selectRR_slt_i16(i16 %x, i16 %y, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    movi16 a1, 1
 ; GENERIC-NEXT:    subu16 a1, a0
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB168_2
+; GENERIC-NEXT:    bt16 .LBB170_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB168_2: # %entry
+; GENERIC-NEXT:  .LBB170_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -6952,10 +7005,10 @@ define i16 @selectRI_slt_i16(i16 %x, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB169_2
+; GENERIC-NEXT:    bt16 .LBB171_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB169_2: # %entry
+; GENERIC-NEXT:  .LBB171_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -6997,10 +7050,10 @@ define i16 @selectRX_slt_i16(i16 %x, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB170_2
+; GENERIC-NEXT:    bt16 .LBB172_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB170_2: # %entry
+; GENERIC-NEXT:  .LBB172_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -7026,10 +7079,10 @@ define i16 @selectC_slt_i16(i1 %c, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB171_2
+; GENERIC-NEXT:    bt16 .LBB173_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB171_2: # %entry
+; GENERIC-NEXT:  .LBB173_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -7061,10 +7114,10 @@ define i8 @selectRR_slt_i8(i8 %x, i8 %y, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    movi16 a1, 1
 ; GENERIC-NEXT:    subu16 a1, a0
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB172_2
+; GENERIC-NEXT:    bt16 .LBB174_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB172_2: # %entry
+; GENERIC-NEXT:  .LBB174_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -7094,10 +7147,10 @@ define i8 @selectRI_slt_i8(i8 %x, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB173_2
+; GENERIC-NEXT:    bt16 .LBB175_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB173_2: # %entry
+; GENERIC-NEXT:  .LBB175_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -7142,10 +7195,10 @@ define i8 @selectRX_slt_i8(i8 %x, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB174_2
+; GENERIC-NEXT:    bt16 .LBB176_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB174_2: # %entry
+; GENERIC-NEXT:  .LBB176_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -7172,10 +7225,10 @@ define i8 @selectC_slt_i8(i1 %c, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB175_2
+; GENERIC-NEXT:    bt16 .LBB177_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB175_2: # %entry
+; GENERIC-NEXT:  .LBB177_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -7202,18 +7255,18 @@ define i1 @selectRR_slt_i1(i1 %x, i1 %y, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
 ; GENERIC-NEXT:    mov16 a0, a2
-; GENERIC-NEXT:    bf16 .LBB176_3
+; GENERIC-NEXT:    bf16 .LBB178_3
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bf16 .LBB176_4
-; GENERIC-NEXT:  .LBB176_2: # %entry
+; GENERIC-NEXT:    bf16 .LBB178_4
+; GENERIC-NEXT:  .LBB178_2: # %entry
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
-; GENERIC-NEXT:  .LBB176_3: # %entry
+; GENERIC-NEXT:  .LBB178_3: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB176_2
-; GENERIC-NEXT:  .LBB176_4: # %entry
+; GENERIC-NEXT:    bt16 .LBB178_2
+; GENERIC-NEXT:  .LBB178_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -7237,10 +7290,10 @@ define i1 @selectRI_slt_i1(i1 %x, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB177_2
+; GENERIC-NEXT:    bt16 .LBB179_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB177_2: # %entry
+; GENERIC-NEXT:  .LBB179_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -7284,10 +7337,10 @@ define i1 @selectC_slt_i1(i1 %c, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB179_2
+; GENERIC-NEXT:    bt16 .LBB181_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB179_2: # %entry
+; GENERIC-NEXT:  .LBB181_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -7312,10 +7365,10 @@ define i32 @selectRR_sle_i32(i32 %x, i32 %y, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    cmplt16 a0, a1
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB180_2
+; GENERIC-NEXT:    bt16 .LBB182_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB180_2: # %entry
+; GENERIC-NEXT:  .LBB182_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -7343,10 +7396,10 @@ define i32 @selectRI_sle_i32(i32 %x, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB181_2
+; GENERIC-NEXT:    bt16 .LBB183_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB181_2: # %entry
+; GENERIC-NEXT:  .LBB183_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -7389,10 +7442,10 @@ define i32 @selectRX_sle_i32(i32 %x, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB182_2
+; GENERIC-NEXT:    bt16 .LBB184_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB182_2: # %entry
+; GENERIC-NEXT:  .LBB184_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -7418,10 +7471,10 @@ define i32 @selectC_sle_i32(i1 %c, i32 %n, i32 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB183_2
+; GENERIC-NEXT:    bt16 .LBB185_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB183_2: # %entry
+; GENERIC-NEXT:  .LBB185_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -7471,19 +7524,19 @@ define i64 @selectRR_sle_i64(i64 %x, i64 %y, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpne16 a3, a1
 ; GENERIC-NEXT:    mvcv16 a1
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bf16 .LBB184_2
+; GENERIC-NEXT:    bf16 .LBB186_2
 ; GENERIC-NEXT:  # %bb.1:
 ; GENERIC-NEXT:    movi16 a0, 1
 ; GENERIC-NEXT:    subu16 a0, a2
-; GENERIC-NEXT:  .LBB184_2: # %entry
+; GENERIC-NEXT:  .LBB186_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB184_4
+; GENERIC-NEXT:    bt16 .LBB186_4
 ; GENERIC-NEXT:  # %bb.3: # %entry
 ; GENERIC-NEXT:    movi16 a0, 4
-; GENERIC-NEXT:    br32 .LBB184_5
-; GENERIC-NEXT:  .LBB184_4:
+; GENERIC-NEXT:    br32 .LBB186_5
+; GENERIC-NEXT:  .LBB186_4:
 ; GENERIC-NEXT:    movi16 a0, 12
-; GENERIC-NEXT:  .LBB184_5: # %entry
+; GENERIC-NEXT:  .LBB186_5: # %entry
 ; GENERIC-NEXT:    addu16 a0, sp
 ; GENERIC-NEXT:    mov16 a1, a0
 ; GENERIC-NEXT:    ld16.w a0, (a0, 0)
@@ -7548,32 +7601,32 @@ define i64 @selectRI_sle_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpnei16 a1, 0
 ; GENERIC-NEXT:    mvcv16 a1
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bf16 .LBB185_5
+; GENERIC-NEXT:    bf16 .LBB187_5
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB185_6
-; GENERIC-NEXT:  .LBB185_2: # %entry
+; GENERIC-NEXT:    bt16 .LBB187_6
+; GENERIC-NEXT:  .LBB187_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB185_4
-; GENERIC-NEXT:  .LBB185_3:
+; GENERIC-NEXT:    bf16 .LBB187_4
+; GENERIC-NEXT:  .LBB187_3:
 ; GENERIC-NEXT:    ld16.w a3, (sp, 12)
-; GENERIC-NEXT:  .LBB185_4: # %entry
+; GENERIC-NEXT:  .LBB187_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    mov16 a1, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
-; GENERIC-NEXT:  .LBB185_5: # %entry
+; GENERIC-NEXT:  .LBB187_5: # %entry
 ; GENERIC-NEXT:    movi16 a0, 1
 ; GENERIC-NEXT:    subu16 a0, l0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB185_2
-; GENERIC-NEXT:  .LBB185_6:
+; GENERIC-NEXT:    bf16 .LBB187_2
+; GENERIC-NEXT:  .LBB187_6:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 8)
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB185_3
-; GENERIC-NEXT:    br32 .LBB185_4
+; GENERIC-NEXT:    bt16 .LBB187_3
+; GENERIC-NEXT:    br32 .LBB187_4
 entry:
   %icmp = icmp sle i64 %x, 10
   %ret = select i1 %icmp, i64 %m, i64 %n
@@ -7648,16 +7701,16 @@ define i64 @selectRX_sle_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    cmpnei16 a1, 0
 ; GENERIC-NEXT:    mvcv16 a1
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bf16 .LBB186_5
+; GENERIC-NEXT:    bf16 .LBB188_5
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB186_6
-; GENERIC-NEXT:  .LBB186_2: # %entry
+; GENERIC-NEXT:    bt16 .LBB188_6
+; GENERIC-NEXT:  .LBB188_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB186_4
-; GENERIC-NEXT:  .LBB186_3:
+; GENERIC-NEXT:    bf16 .LBB188_4
+; GENERIC-NEXT:  .LBB188_3:
 ; GENERIC-NEXT:    ld16.w a3, (sp, 20)
-; GENERIC-NEXT:  .LBB186_4: # %entry
+; GENERIC-NEXT:  .LBB188_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    mov16 a1, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -7666,16 +7719,16 @@ define i64 @selectRX_sle_i64(i64 %x, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    ld16.w l2, (sp, 8) # 4-byte Folded Reload
 ; GENERIC-NEXT:    addi16 sp, sp, 12
 ; GENERIC-NEXT:    rts16
-; GENERIC-NEXT:  .LBB186_5: # %entry
+; GENERIC-NEXT:  .LBB188_5: # %entry
 ; GENERIC-NEXT:    movi16 a0, 1
 ; GENERIC-NEXT:    subu16 a0, l0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB186_2
-; GENERIC-NEXT:  .LBB186_6:
+; GENERIC-NEXT:    bf16 .LBB188_2
+; GENERIC-NEXT:  .LBB188_6:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 16)
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB186_3
-; GENERIC-NEXT:    br32 .LBB186_4
+; GENERIC-NEXT:    bt16 .LBB188_3
+; GENERIC-NEXT:    br32 .LBB188_4
 entry:
   %icmp = icmp sle i64 %x, 47777777
   %ret = select i1 %icmp, i64 %m, i64 %n
@@ -7699,15 +7752,15 @@ define i64 @selectC_sle_i64(i1 %c, i64 %n, i64 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB187_2
+; GENERIC-NEXT:    bt16 .LBB189_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a1
-; GENERIC-NEXT:  .LBB187_2: # %entry
+; GENERIC-NEXT:  .LBB189_2: # %entry
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bf16 .LBB187_4
+; GENERIC-NEXT:    bf16 .LBB189_4
 ; GENERIC-NEXT:  # %bb.3:
 ; GENERIC-NEXT:    ld16.w a2, (sp, 4)
-; GENERIC-NEXT:  .LBB187_4: # %entry
+; GENERIC-NEXT:  .LBB189_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    mov16 a1, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
@@ -7738,10 +7791,10 @@ define i16 @selectRR_sle_i16(i16 %x, i16 %y, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    cmplt16 a0, a1
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB188_2
+; GENERIC-NEXT:    bt16 .LBB190_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB188_2: # %entry
+; GENERIC-NEXT:  .LBB190_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -7771,10 +7824,10 @@ define i16 @selectRI_sle_i16(i16 %x, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB189_2
+; GENERIC-NEXT:    bt16 .LBB191_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB189_2: # %entry
+; GENERIC-NEXT:  .LBB191_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -7816,10 +7869,10 @@ define i16 @selectRX_sle_i16(i16 %x, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB190_2
+; GENERIC-NEXT:    bt16 .LBB192_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB190_2: # %entry
+; GENERIC-NEXT:  .LBB192_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -7845,10 +7898,10 @@ define i16 @selectC_sle_i16(i1 %c, i16 %n, i16 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB191_2
+; GENERIC-NEXT:    bt16 .LBB193_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB191_2: # %entry
+; GENERIC-NEXT:  .LBB193_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -7878,10 +7931,10 @@ define i8 @selectRR_sle_i8(i8 %x, i8 %y, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    cmplt16 a0, a1
 ; GENERIC-NEXT:    mvcv16 a0
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB192_2
+; GENERIC-NEXT:    bt16 .LBB194_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB192_2: # %entry
+; GENERIC-NEXT:  .LBB194_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -7911,10 +7964,10 @@ define i8 @selectRI_sle_i8(i8 %x, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB193_2
+; GENERIC-NEXT:    bt16 .LBB195_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB193_2: # %entry
+; GENERIC-NEXT:  .LBB195_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -7959,10 +8012,10 @@ define i8 @selectRX_sle_i8(i8 %x, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    movi16 a3, 1
 ; GENERIC-NEXT:    subu16 a3, a0
 ; GENERIC-NEXT:    btsti16 a3, 0
-; GENERIC-NEXT:    bt16 .LBB194_2
+; GENERIC-NEXT:    bt16 .LBB196_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB194_2: # %entry
+; GENERIC-NEXT:  .LBB196_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    ld16.w l0, (sp, 0) # 4-byte Folded Reload
@@ -7989,10 +8042,10 @@ define i8 @selectC_sle_i8(i1 %c, i8 %n, i8 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB195_2
+; GENERIC-NEXT:    bt16 .LBB197_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB195_2: # %entry
+; GENERIC-NEXT:  .LBB197_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -8018,15 +8071,15 @@ define i1 @selectRR_sle_i1(i1 %x, i1 %y, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB196_2
+; GENERIC-NEXT:    bt16 .LBB198_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a3
-; GENERIC-NEXT:  .LBB196_2: # %entry
+; GENERIC-NEXT:  .LBB198_2: # %entry
 ; GENERIC-NEXT:    btsti16 a1, 0
-; GENERIC-NEXT:    bt16 .LBB196_4
+; GENERIC-NEXT:    bt16 .LBB198_4
 ; GENERIC-NEXT:  # %bb.3: # %entry
 ; GENERIC-NEXT:    mov16 a3, a2
-; GENERIC-NEXT:  .LBB196_4: # %entry
+; GENERIC-NEXT:  .LBB198_4: # %entry
 ; GENERIC-NEXT:    mov16 a0, a3
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -8070,10 +8123,10 @@ define i1 @selectRX_sle_i1(i1 %x, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB198_2
+; GENERIC-NEXT:    bt16 .LBB200_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB198_2: # %entry
+; GENERIC-NEXT:  .LBB200_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16
@@ -8097,10 +8150,10 @@ define i1 @selectC_sle_i1(i1 %c, i1 %n, i1 %m) {
 ; GENERIC-NEXT:    subi16 sp, sp, 4
 ; GENERIC-NEXT:    .cfi_def_cfa_offset 4
 ; GENERIC-NEXT:    btsti16 a0, 0
-; GENERIC-NEXT:    bt16 .LBB199_2
+; GENERIC-NEXT:    bt16 .LBB201_2
 ; GENERIC-NEXT:  # %bb.1: # %entry
 ; GENERIC-NEXT:    mov16 a2, a1
-; GENERIC-NEXT:  .LBB199_2: # %entry
+; GENERIC-NEXT:  .LBB201_2: # %entry
 ; GENERIC-NEXT:    mov16 a0, a2
 ; GENERIC-NEXT:    addi16 sp, sp, 4
 ; GENERIC-NEXT:    rts16


        


More information about the llvm-commits mailing list