52 lines · plain
1# Xqcilb - Qualcomm uC Long Branch Extension2# RUN: llvm-mc %s -triple=riscv32 -mattr=+experimental-xqcilb -M no-aliases -show-encoding \3# RUN: | FileCheck -check-prefixes=CHECK-ENC,CHECK-INST,CHECK-NOALIAS %s4# RUN: llvm-mc -filetype=obj -triple riscv32 -mattr=+experimental-xqcilb < %s \5# RUN: | llvm-objdump --mattr=+experimental-xqcilb -M no-aliases --no-print-imm-hex -d - \6# RUN: | FileCheck -check-prefixes=CHECK-OBJ,CHECK-OBJ-NOALIAS %s7# RUN: llvm-mc %s -triple=riscv32 -mattr=+experimental-xqcilb -show-encoding \8# RUN: | FileCheck -check-prefixes=CHECK-ENC,CHECK-INST,CHECK-ALIAS %s9# RUN: llvm-mc -filetype=obj -triple riscv32 -mattr=+experimental-xqcilb < %s \10# RUN: | llvm-objdump --mattr=+experimental-xqcilb --no-print-imm-hex -d - \11# RUN: | FileCheck -check-prefixes=CHECK-OBJ,CHECK-OBJ-ALIAS %s12 13# CHECK-INST: qc.e.j -214748364814# CHECK-OBJ: qc.e.j 0x8000000015# CHECK-ENC: encoding: [0x1f,0x40,0x00,0x00,0x00,0x80]16qc.e.j -214748364817 18# CHECK-INST: qc.e.jal 214748364019# CHECK-OBJ: qc.e.jal 0x7ffffffe20# CHECK-ENC: encoding: [0x9f,0xcc,0x0e,0xfe,0xff,0x7f]21qc.e.jal 214748364022 23# Check that compress patterns work as expected24 25# CHECK-NOALIAS: c.jal -11626# CHECK-ALIAS: jal -11627# CHECK-OBJ-NOALIAS: c.jal 0xffffff9828# CHECK-OBJ-ALIAS: jal 0xffffff9829# CHECK-ENC: encoding: [0x71,0x37]30qc.e.jal 0xffffff8c31 32# CHECK-NOALIAS: c.j 102433# CHECK-ALIAS: j 102434# CHECK-OBJ-NOALIAS: c.j 0x40e35# CHECK-OBJ-ALIAS: j 0x40e36# CHECK-ENC: encoding: [0x01,0xa1]37qc.e.j 102438 39# CHECK-NOALIAS: jal ra, 300040# CHECK-ALIAS: jal 300041# CHECK-OBJ-NOALIAS: jal ra, 0xbc842# CHECK-OBJ-ALIAS: jal 0xbc843# CHECK-ENC: encoding: [0xef,0x00,0x90,0x3b]44qc.e.jal 300045 46# CHECK-NOALIAS: jal zero, -300047# CHECK-ALIAS: j -300048# CHECK-OBJ-NOALIAS: jal zero, 0xfffff45c49# CHECK-OBJ-ALIAS: j 0xfffff45c50# CHECK-ENC: encoding: [0x6f,0xf0,0x8f,0xc4]51qc.e.j -300052