diff options
author | Jack Carter <jack.carter@imgtec.com> | 2013-03-28 23:02:21 +0000 |
---|---|---|
committer | Jack Carter <jack.carter@imgtec.com> | 2013-03-28 23:02:21 +0000 |
commit | 94fcfaf3a9f1179edb3b8053fe7b23eab6fb83bb (patch) | |
tree | 5460432b5babe355c274511b1ffc0820390113d7 /test/MC/Mips | |
parent | bad24f757d430ed9ef5348da58aa20d03409d6a0 (diff) | |
download | external_llvm-94fcfaf3a9f1179edb3b8053fe7b23eab6fb83bb.zip external_llvm-94fcfaf3a9f1179edb3b8053fe7b23eab6fb83bb.tar.gz external_llvm-94fcfaf3a9f1179edb3b8053fe7b23eab6fb83bb.tar.bz2 |
[Mips Assembler] Add alias definitions for jal
Mips assembler allows following to be used as aliased instructions:
jal $rs for jalr $rs
jal $rd,$rd for jalr $rd,$rs
This patch provides alias definitions in td files and test cases to show the usage.
Contributer: Vladimir Medic
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178304 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/MC/Mips')
-rw-r--r-- | test/MC/Mips/mips-jump-instructions.s | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/test/MC/Mips/mips-jump-instructions.s b/test/MC/Mips/mips-jump-instructions.s index 849eae9..1dcb287 100644 --- a/test/MC/Mips/mips-jump-instructions.s +++ b/test/MC/Mips/mips-jump-instructions.s @@ -1,4 +1,5 @@ -# RUN: llvm-mc %s -triple=mipsel-unknown-linux -show-encoding -mcpu=mips32r2 | FileCheck %s +# RUN: llvm-mc %s -triple=mipsel-unknown-linux -show-encoding -mcpu=mips32r2 | \ +# RUN: FileCheck %s # Check that the assembler can handle the documented syntax # for jumps and branches. # CHECK: .section __TEXT,__text,regular,pure_instructions @@ -25,6 +26,9 @@ # CHECK: nop # encoding: [0x00,0x00,0x00,0x00] # CHECK: bal 1332 # encoding: [0x4d,0x01,0x11,0x04] # CHECK: nop # encoding: [0x00,0x00,0x00,0x00] + +.set noreorder + b 1332 nop bc1f 1332 @@ -63,6 +67,11 @@ end_of_code: # CHECK: jr $7 # encoding: [0x08,0x00,0xe0,0x00] # CHECK: nop # encoding: [0x00,0x00,0x00,0x00] # CHECK: jr $7 # encoding: [0x08,0x00,0xe0,0x00] +# CHECK: nop # encoding: [0x00,0x00,0x00,0x00] +# CHECK: jalr $25 # encoding: [0x09,0xf8,0x20,0x03] +# CHECK: nop # encoding: [0x00,0x00,0x00,0x00] +# CHECK: jalr $4, $25 # encoding: [0x09,0x20,0x20,0x03] +# CHECK: nop # encoding: [0x00,0x00,0x00,0x00] j 1328 @@ -78,3 +87,8 @@ end_of_code: jr $7 nop j $7 + nop + jal $25 + nop + jal $4,$25 + nop |