195 lines · plain
1# RUN: llvm-mc -triple xtensa --mattr=+density,loop < %s -show-encoding \2# RUN: | FileCheck -check-prefix=INSTR -check-prefix=FIXUP %s3# RUN: llvm-mc -filetype=obj -triple xtensa --mattr=+density,loop < %s \4# RUN: | llvm-readobj -r - | FileCheck -check-prefix=RELOC %s5 6# Check prefixes:7# RELOC - Check the relocation in the object.8# FIXUP - Check the fixup on the instruction.9# INSTR - Check the instruction is handled properly by the ASMPrinter10 11.long func12# RELOC: R_XTENSA_32 func13 14ball a1, a3, func15# RELOC: R_XTENSA_SLOT0_OP16# INST: ball a1, a3, func17# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_818 19bany a8, a13, func20# RELOC: R_XTENSA_SLOT0_OP21# INST: bany a8, a13, func22# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_823 24bbc a8, a7, func25# RELOC: R_XTENSA_SLOT0_OP26# INST: bbc a8, a7, func27# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_828 29bbci a3, 16, func30# RELOC: R_XTENSA_SLOT0_OP31# INST: bbci a3, 16, func32# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_833 34bbs a12, a5, func35# RELOC: R_XTENSA_SLOT0_OP36# INST: bbs a12, a5, func37# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_838 39bbsi a3, 16, func40# RELOC: R_XTENSA_SLOT0_OP41# INST: bbsi a3, 16, func42# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_843 44bnall a7, a3, func45# RELOC: R_XTENSA_SLOT0_OP46# INST: bnall a7, a3, func47# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_848 49bnone a2, a4, func50# RELOC: R_XTENSA_SLOT0_OP51# INST: bnone a2, a4, func52# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_853 54beq a1, a2, func55# RELOC: R_XTENSA_SLOT0_OP56# INST: beq a1, a2, func57# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_858 59beq a11, a5, func60# RELOC: R_XTENSA_SLOT0_OP61# INST: beq a11, a5, func62# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_863 64beqi a1, 256, func65# RELOC: R_XTENSA_SLOT0_OP66# INST: beqi a1, 256, func67# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_868 69beqi a11, -1, func70# RELOC: R_XTENSA_SLOT0_OP71# INST: beqi a11, -1, func72# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_873 74beqz a8, func75# RELOC: R_XTENSA_SLOT0_OP76# INST: beqz a8, func77# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_1278 79beqz.n a8, func80# INST: beqz.n a8, func81# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_682 83bnez.n a8, func84# INST: bnez.n a8, func85# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_686 87bge a14, a2, func88# RELOC: R_XTENSA_SLOT0_OP89# INST: bge a14, a2, func90# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_891 92bgei a11, -1, func93# RELOC: R_XTENSA_SLOT0_OP94# INST: bgei a11, -1, func95# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_896 97bgei a11, 128, func98# RELOC: R_XTENSA_SLOT0_OP99# INST: bgei a11, 128, func100# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_8101 102bgeu a14, a2, func103# RELOC: R_XTENSA_SLOT0_OP104# INST: bgeu a14, a2, func105# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_8106 107bgeui a9, 32768, func108# RELOC: R_XTENSA_SLOT0_OP109# INST: bgeui a9, 32768, func110# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_8111 112bgeui a7, 65536, func113# RELOC: R_XTENSA_SLOT0_OP114# INST: bgeui a7, 65536, func115# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_8116 117bgeui a7, 64, func118# RELOC: R_XTENSA_SLOT0_OP119# INST: bgeui a7, 64, func120# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_8121 122bgez a8, func123# RELOC: R_XTENSA_SLOT0_OP124# INST: bgez a8, func125# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_12126 127blt a14, a2, func128# RELOC: R_XTENSA_SLOT0_OP129# INST: blt a14, a2, func130# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_8131 132blti a12, -1, func133# RELOC: R_XTENSA_SLOT0_OP134# INST: blti a12, -1, func135# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_8136 137blti a0, 32, func138# RELOC: R_XTENSA_SLOT0_OP139# INST: blti a0, 32, func140# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_8141 142bgeu a13, a1, func143# RELOC: R_XTENSA_SLOT0_OP144# INST: bgeu a13, a1, func145# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_8146 147bltui a7, 16, func148# RELOC: R_XTENSA_SLOT0_OP149# INST: bltui a7, 16, func150# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_8151 152bltz a6, func153# RELOC: R_XTENSA_SLOT0_OP154# INST: bltz a6, func155# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_12156 157bne a3, a4, func158# RELOC: R_XTENSA_SLOT0_OP159# INST: bne a3, a4, func160# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_8161 162bnei a5, 12, func163# RELOC: R_XTENSA_SLOT0_OP164# INST: bnei a5, 12, func165# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_8166 167bnez a5, func168# RELOC: R_XTENSA_SLOT0_OP169# INST: bnez a5, func170# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_branch_12171 172call0 func173# RELOC: R_XTENSA_SLOT0_OP174# INST: call0 func175# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_call_18176 177j func178# RELOC: R_XTENSA_SLOT0_OP179# INSTR: j func180# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_jump_18181 182l32r a6, func183# RELOC: R_XTENSA_SLOT0_OP184# INSTR: l32r a6, func185# FIXUP: fixup A - offset: 0, value: func, kind: fixup_xtensa_l32r_16186 187loop a3, LBL188# RELOC: R_XTENSA_SLOT0_OP189# INSTR: loop a3, LBL190# FIXUP: fixup A - offset: 0, value: LBL, kind: fixup_xtensa_loop_8191 192.fill 200193 194LBL:195