142 lines · plain
1# RUN: llvm-mc -filetype=obj -triple=riscv64 %s \2# RUN: | llvm-objdump -d -M no-aliases - \3# RUN: | FileCheck --check-prefix=CHECK-INST %s4# RUN: llvm-mc -filetype=obj -triple=riscv64 -mattr=+c %s \5# RUN: | llvm-objdump -d -M no-aliases - \6# RUN: | FileCheck --check-prefix=CHECK-INST-C %s7# RUN: llvm-mc -filetype=obj -triple=riscv64 -mattr=+relax %s \8# RUN: | llvm-objdump -dr -M no-aliases - \9# RUN: | FileCheck --check-prefix=CHECK-INST-RELAX %s10# RUN: llvm-mc -filetype=obj -triple=riscv64 -mattr=+c,+relax %s \11# RUN: | llvm-objdump -dr -M no-aliases - \12# RUN: | FileCheck --check-prefix=CHECK-INST-C-RELAX %s13 14 .text15 .type test,@function16test:17# CHECK-INST: beq a0, a1, 0x818# CHECK-INST-NEXT: jal zero, 0x145819# CHECK-INST-C: beq a0, a1, 0x820# CHECK-INST-C-NEXT: jal zero, 0x145821# CHECK-INST-RELAX: beq a0, a1, 0x822# CHECK-INST-RELAX-NEXT: jal zero, {{.*}}23# CHECK-INST-RELAX-NEXT: R_RISCV_JAL .L124# CHECK-INST-C-RELAX: beq a0, a1, 0x825# CHECK-INST-C-RELAX-NEXT: jal zero, {{.*}}26# CHECK-INST-C-RELAX-NEXT: R_RISCV_JAL .L127 bne a0, a1, .L128 call relax29.fill 1300-2, 4, 030.L1:31 ret32# CHECK-INST: bne a0, a1, 0x146433# CHECK-INST-NEXT: jal zero, 0x28b434# CHECK-INST-C: bne a0, a1, 0x146235# CHECK-INST-C-NEXT: jal zero, 0x28b236# CHECK-INST-RELAX: bne a0, a1, 0x146437# CHECK-INST-RELAX-NEXT: jal zero, {{.*}}38# CHECK-INST-C-RELAX: bne a0, a1, 0x146239# CHECK-INST-C-RELAX-NEXT: jal zero, {{.*}}40 beq a0, a1, .L241.fill 1300, 4, 042.L2:43 ret44# CHECK-INST: bge a0, a1, 0x28c045# CHECK-INST-NEXT: jal zero, 0x3d1046# CHECK-INST-C: bge a0, a1, 0x28bc47# CHECK-INST-C-NEXT: jal zero, 0x3d0c48# CHECK-INST-RELAX: bge a0, a1, 0x28c049# CHECK-INST-RELAX-NEXT: jal zero, {{.*}}50# CHECK-INST-C-RELAX: bge a0, a1, 0x28bc51# CHECK-INST-C-RELAX-NEXT: jal zero, {{.*}}52 blt a0, a1, .L353.fill 1300, 4, 054.L3:55 ret56# CHECK-INST: blt a0, a1, 0x3d1c57# CHECK-INST-NEXT: jal zero, 0x516c58# CHECK-INST-C: blt a0, a1, 0x3d1659# CHECK-INST-C-NEXT: jal zero, 0x516660# CHECK-INST-RELAX: blt a0, a1, 0x3d1c61# CHECK-INST-RELAX-NEXT: jal zero, {{.*}}62# CHECK-INST-C-RELAX: blt a0, a1, 0x3d1663# CHECK-INST-C-RELAX-NEXT: jal zero, {{.*}}64 bge a0, a1, .L465.fill 1300, 4, 066.L4:67 ret68# CHECK-INST: bgeu a0, a1, 0x517869# CHECK-INST-NEXT: jal zero, 0x65c870# CHECK-INST-C: bgeu a0, a1, 0x517071# CHECK-INST-C-NEXT: jal zero, 0x65c072# CHECK-INST-RELAX: bgeu a0, a1, 0x517873# CHECK-INST-RELAX-NEXT: jal zero, {{.*}}74# CHECK-INST-C-RELAX: bgeu a0, a1, 0x517075# CHECK-INST-C-RELAX-NEXT: jal zero, {{.*}}76 bltu a0, a1, .L577.fill 1300, 4, 078.L5:79 ret80# CHECK-INST: bltu a0, a1, 0x65d481# CHECK-INST-NEXT: jal zero, 0x7a2482# CHECK-INST-C: bltu a0, a1, 0x65ca83# CHECK-INST-C-NEXT: jal zero, 0x7a1a84# CHECK-INST-RELAX: bltu a0, a1, 0x65d485# CHECK-INST-RELAX-NEXT: jal zero, {{.*}}86# CHECK-INST-C-RELAX: bltu a0, a1, 0x65ca87# CHECK-INST-C-RELAX-NEXT: jal zero, {{.*}}88 bgeu a0, a1, .L689.fill 1300, 4, 090.L6:91 ret92# CHECK-INST: bne a0, zero, 0x7a3093# CHECK-INST-NEXT: jal zero, 0x8e8094# CHECK-INST-C: c.bnez a0, 0x7a2295# CHECK-INST-C-NEXT: jal zero, 0x8e7296# CHECK-INST-RELAX: bne a0, zero, 0x7a3097# CHECK-INST-RELAX-NEXT: jal zero, {{.*}}98# CHECK-INST-C-RELAX: c.bnez a0, 0x7a2299# CHECK-INST-C-RELAX-NEXT: jal zero, {{.*}}100 beqz a0, .L7101.fill 1300, 4, 0102.L7:103 ret104# CHECK-INST: bne zero, a0, 0x8e8c105# CHECK-INST-NEXT: jal zero, 0xa2dc106# CHECK-INST-C: c.bnez a0, 0x8e7a107# CHECK-INST-C-NEXT: jal zero, 0xa2ca108# CHECK-INST-RELAX: bne zero, a0, 0x8e8c109# CHECK-INST-RELAX-NEXT: jal zero, {{.*}}110# CHECK-INST-C-RELAX: c.bnez a0, 0x8e7a111# CHECK-INST-C-RELAX-NEXT: jal zero, {{.*}}112 beq x0, a0, .L8113.fill 1300, 4, 0114.L8:115 ret116# CHECK-INST: beq a0, zero, 0xa2e8117# CHECK-INST-NEXT: jal zero, 0xb738118# CHECK-INST-C: c.beqz a0, 0xa2d2119# CHECK-INST-C-NEXT: jal zero, 0xb722120# CHECK-INST-RELAX: beq a0, zero, 0xa2e8121# CHECK-INST-RELAX-NEXT: jal zero, {{.*}}122# CHECK-INST-C-RELAX: c.beqz a0, 0xa2d2123# CHECK-INST-C-RELAX-NEXT: jal zero, {{.*}}124 bnez a0, .L9125.fill 1300, 4, 0126.L9:127 ret128# CHECK-INST: beq a6, zero, 0xb744129# CHECK-INST-NEXT: jal zero, 0xcb94130# CHECK-INST-C: beq a6, zero, 0xb72c131# CHECK-INST-C-NEXT: jal zero, 0xcb7c132# CHECK-INST-RELAX: beq a6, zero, 0xb744133# CHECK-INST-RELAX-NEXT: jal zero, {{.*}}134# CHECK-INST-C-RELAX: beq a6, zero, 0xb72c135# CHECK-INST-C-RELAX-NEXT: jal zero, {{.*}}136 bnez x16, .L10137.fill 1300, 4, 0138.L10:139 ret140.Lfunc_end0:141 .size test, .Lfunc_end0-test142