Home | History | Annotate | Download | only in llvm2ice_tests
      1 ; REQUIRES: allow_dump
      2 
      3 ; RUN: %p2i -i %s --filetype=asm --assemble --disassemble --target=mips32 \
      4 ; RUN:    -a -sz-seed=1 -nop-insertion \
      5 ; RUN:    -nop-insertion-percentage=50 -max-nops-per-instruction=1 \
      6 ; RUN:    | FileCheck %s --check-prefix=MIPS32P50N1
      7 ; RUN: %p2i -i %s --filetype=asm --assemble --disassemble --target=mips32 \
      8 ; RUN:    -a -sz-seed=1 -nop-insertion \
      9 ; RUN:    -nop-insertion-percentage=110 -max-nops-per-instruction=2 \
     10 ; RUN:    | FileCheck %s --check-prefix=MIPS32P110N2
     11 
     12 
     13 define internal i32 @nopInsertion(i32 %a, i32 %b, i32 %c) {
     14 entry:
     15   %a1 = add i32 %a, 1
     16   %b1 = add i32 %b, 2
     17   %c1 = add i32 %c, 3
     18   %a2 = sub i32 %a1, 1
     19   %b2 = sub i32 %b1, 2
     20   %c2 = sub i32 %c1, 3
     21   %a3 = mul i32 %a2, %b2
     22   %b3 = mul i32 %a3, %c2
     23   ret i32 %b3
     24 }
     25 
     26 ; MIPS32P50N1-LABEL: nopInsertion
     27 ; MIPS32P50N1: nop
     28 ; MIPS32P50N1: addiu {{.*}}
     29 ; MIPS32P50N1: sw {{.*}}
     30 ; MIPS32P50N1: nop
     31 ; MIPS32P50N1: sw {{.*}}
     32 ; MIPS32P50N1: nop
     33 ; MIPS32P50N1: sw {{.*}}
     34 ; MIPS32P50N1: lw {{.*}}
     35 ; MIPS32P50N1: addiu {{.*}},1
     36 ; MIPS32P50N1: nop
     37 ; MIPS32P50N1: sw {{.*}}
     38 ; MIPS32P50N1: lw {{.*}}
     39 ; MIPS32P50N1: nop
     40 ; MIPS32P50N1: addiu {{.*}},2
     41 ; MIPS32P50N1: nop
     42 ; MIPS32P50N1: sw {{.*}}
     43 ; MIPS32P50N1: nop
     44 ; MIPS32P50N1: lw {{.*}}
     45 ; MIPS32P50N1: nop
     46 ; MIPS32P50N1: addiu {{.*}},3
     47 ; MIPS32P50N1: sw {{.*}}
     48 ; MIPS32P50N1: nop
     49 ; MIPS32P50N1: lw {{.*}}
     50 ; MIPS32P50N1: addiu {{.*}},-1
     51 ; MIPS32P50N1: nop
     52 ; MIPS32P50N1: sw {{.*}}
     53 ; MIPS32P50N1: lw {{.*}}
     54 ; MIPS32P50N1: nop
     55 ; MIPS32P50N1: addiu {{.*}},-2
     56 ; MIPS32P50N1: nop
     57 ; MIPS32P50N1: sw {{.*}}
     58 ; MIPS32P50N1: lw {{.*}}
     59 ; MIPS32P50N1: addiu {{.*}},-3
     60 ; MIPS32P50N1: sw {{.*}}
     61 ; MIPS32P50N1: lw {{.*}}
     62 ; MIPS32P50N1: lw {{.*}}
     63 ; MIPS32P50N1: nop
     64 ; MIPS32P50N1: mul {{.*}}
     65 ; MIPS32P50N1: sw {{.*}}
     66 ; MIPS32P50N1: lw {{.*}}
     67 ; MIPS32P50N1: nop
     68 ; MIPS32P50N1: lw {{.*}}
     69 ; MIPS32P50N1: nop
     70 ; MIPS32P50N1: mul {{.*}}
     71 ; MIPS32P50N1: nop
     72 ; MIPS32P50N1: sw {{.*}}
     73 ; MIPS32P50N1: nop
     74 ; MIPS32P50N1: lw {{.*}}
     75 ; MIPS32P50N1: nop
     76 ; MIPS32P50N1: addiu {{.*}}
     77 ; MIPS32P50N1: jr ra
     78 ; MIPS32P50N1: nop
     79 
     80 ; MIPS32P110N2-LABEL: nopInsertion
     81 ; MIPS32P110N2: nop
     82 ; MIPS32P110N2: nop
     83 ; MIPS32P110N2: addiu {{.*}}
     84 ; MIPS32P110N2: nop
     85 ; MIPS32P110N2: nop
     86 ; MIPS32P110N2: sw {{.*}}
     87 ; MIPS32P110N2: nop
     88 ; MIPS32P110N2: nop
     89 ; MIPS32P110N2: sw {{.*}}
     90 ; MIPS32P110N2: nop
     91 ; MIPS32P110N2: nop
     92 ; MIPS32P110N2: sw {{.*}}
     93 ; MIPS32P110N2: nop
     94 ; MIPS32P110N2: nop
     95 ; MIPS32P110N2: lw {{.*}}
     96 ; MIPS32P110N2: nop
     97 ; MIPS32P110N2: nop
     98 ; MIPS32P110N2: addiu {{.*}},1
     99 ; MIPS32P110N2: nop
    100 ; MIPS32P110N2: nop
    101 ; MIPS32P110N2: sw {{.*}}
    102 ; MIPS32P110N2: nop
    103 ; MIPS32P110N2: nop
    104 ; MIPS32P110N2: lw {{.*}}
    105 ; MIPS32P110N2: nop
    106 ; MIPS32P110N2: nop
    107 ; MIPS32P110N2: addiu {{.*}},2
    108 ; MIPS32P110N2: nop
    109 ; MIPS32P110N2: nop
    110 ; MIPS32P110N2: sw {{.*}}
    111 ; MIPS32P110N2: nop
    112 ; MIPS32P110N2: nop
    113 ; MIPS32P110N2: lw {{.*}}
    114 ; MIPS32P110N2: nop
    115 ; MIPS32P110N2: nop
    116 ; MIPS32P110N2: addiu {{.*}},3
    117 ; MIPS32P110N2: nop
    118 ; MIPS32P110N2: nop
    119 ; MIPS32P110N2: sw {{.*}}
    120 ; MIPS32P110N2: nop
    121 ; MIPS32P110N2: nop
    122 ; MIPS32P110N2: lw {{.*}}
    123 ; MIPS32P110N2: nop
    124 ; MIPS32P110N2: nop
    125 ; MIPS32P110N2: addiu {{.*}},-1
    126 ; MIPS32P110N2: nop
    127 ; MIPS32P110N2: nop
    128 ; MIPS32P110N2: sw {{.*}}
    129 ; MIPS32P110N2: nop
    130 ; MIPS32P110N2: nop
    131 ; MIPS32P110N2: lw {{.*}}
    132 ; MIPS32P110N2: nop
    133 ; MIPS32P110N2: nop
    134 ; MIPS32P110N2: addiu {{.*}},-2
    135 ; MIPS32P110N2: nop
    136 ; MIPS32P110N2: nop
    137 ; MIPS32P110N2: sw {{.*}}
    138 ; MIPS32P110N2: nop
    139 ; MIPS32P110N2: nop
    140 ; MIPS32P110N2: lw {{.*}}
    141 ; MIPS32P110N2: nop
    142 ; MIPS32P110N2: nop
    143 ; MIPS32P110N2: addiu {{.*}},-3
    144 ; MIPS32P110N2: nop
    145 ; MIPS32P110N2: nop
    146 ; MIPS32P110N2: sw {{.*}}
    147 ; MIPS32P110N2: nop
    148 ; MIPS32P110N2: nop
    149 ; MIPS32P110N2: lw {{.*}}
    150 ; MIPS32P110N2: nop
    151 ; MIPS32P110N2: nop
    152 ; MIPS32P110N2: lw {{.*}}
    153 ; MIPS32P110N2: nop
    154 ; MIPS32P110N2: nop
    155 ; MIPS32P110N2: mul {{.*}}
    156 ; MIPS32P110N2: nop
    157 ; MIPS32P110N2: nop
    158 ; MIPS32P110N2: sw {{.*}}
    159 ; MIPS32P110N2: nop
    160 ; MIPS32P110N2: nop
    161 ; MIPS32P110N2: lw {{.*}}
    162 ; MIPS32P110N2: nop
    163 ; MIPS32P110N2: nop
    164 ; MIPS32P110N2: lw {{.*}}
    165 ; MIPS32P110N2: nop
    166 ; MIPS32P110N2: nop
    167 ; MIPS32P110N2: mul {{.*}}
    168 ; MIPS32P110N2: nop
    169 ; MIPS32P110N2: nop
    170 ; MIPS32P110N2: sw {{.*}}
    171 ; MIPS32P110N2: nop
    172 ; MIPS32P110N2: nop
    173 ; MIPS32P110N2: lw {{.*}}
    174 ; MIPS32P110N2: nop
    175 ; MIPS32P110N2: nop
    176 ; MIPS32P110N2: addiu {{.*}}
    177 ; MIPS32P110N2: nop
    178 ; MIPS32P110N2: nop
    179 ; MIPS32P110N2: jr ra
    180 ; MIPS32P110N2: nop
    181 ; MIPS32P110N2: nop
    182