diff options
author | Simon Dardis <simon.dardis@mips.com> | 2018-03-13 14:39:44 +0000 |
---|---|---|
committer | Simon Dardis <simon.dardis@mips.com> | 2018-03-13 14:39:44 +0000 |
commit | 476ed8f26e91bce8144b4df4c20eb1c990383ba3 (patch) | |
tree | e82da64194c526395d0c3add7e35f241e37d819a /llvm/test | |
parent | d9a8b6a745c15c78a09fc4bf2723c8164b402232 (diff) | |
download | bcm5719-llvm-476ed8f26e91bce8144b4df4c20eb1c990383ba3.tar.gz bcm5719-llvm-476ed8f26e91bce8144b4df4c20eb1c990383ba3.zip |
[mips] Fix the definitions of the EVA instructions
Correct their availability to their respective ISAs.
Reviewers: atanasyan
Differential Revision: https://reviews.llvm.org/D44209
llvm-svn: 327403
Diffstat (limited to 'llvm/test')
-rw-r--r-- | llvm/test/CodeGen/Mips/micromips-eva.mir | 4 | ||||
-rw-r--r-- | llvm/test/MC/Disassembler/Mips/micromips32r3/valid-el.txt | 2 | ||||
-rw-r--r-- | llvm/test/MC/Disassembler/Mips/micromips32r3/valid.txt | 2 | ||||
-rw-r--r-- | llvm/test/MC/Disassembler/Mips/micromips32r6/valid.txt | 2 | ||||
-rw-r--r-- | llvm/test/MC/Mips/micromips-control-instructions.s | 25 | ||||
-rw-r--r-- | llvm/test/MC/Mips/micromips-eva.s | 96 | ||||
-rw-r--r-- | llvm/test/MC/Mips/micromips-loadstore-instructions.s | 25 | ||||
-rw-r--r-- | llvm/test/MC/Mips/micromips/invalid.s | 2 | ||||
-rw-r--r-- | llvm/test/MC/Mips/micromips/valid.s | 2 | ||||
-rw-r--r-- | llvm/test/MC/Mips/micromips32r6-eva.s | 76 | ||||
-rw-r--r-- | llvm/test/MC/Mips/micromips32r6/invalid.s | 2 | ||||
-rw-r--r-- | llvm/test/MC/Mips/micromips32r6/valid.s | 12 |
12 files changed, 182 insertions, 68 deletions
diff --git a/llvm/test/CodeGen/Mips/micromips-eva.mir b/llvm/test/CodeGen/Mips/micromips-eva.mir index a2ec668ee0c..56e74d5848d 100644 --- a/llvm/test/CodeGen/Mips/micromips-eva.mir +++ b/llvm/test/CodeGen/Mips/micromips-eva.mir @@ -1,5 +1,5 @@ -# RUN: llc -O0 -march=mips -mcpu=mips32r3 -mattr=+micromips -start-after=expand-isel-pseudos \ -# RUN: -filetype obj %s -o - | llvm-objdump -d - | FileCheck %s +# RUN: llc -O0 -march=mips -mcpu=mips32r3 -mattr=+micromips,+eva -start-after=expand-isel-pseudos \ +# RUN: -filetype obj %s -o - | llvm-objdump -mattr=+eva -d - | FileCheck %s --- | diff --git a/llvm/test/MC/Disassembler/Mips/micromips32r3/valid-el.txt b/llvm/test/MC/Disassembler/Mips/micromips32r3/valid-el.txt index 0d3836d0a03..a626715e71e 100644 --- a/llvm/test/MC/Disassembler/Mips/micromips32r3/valid-el.txt +++ b/llvm/test/MC/Disassembler/Mips/micromips32r3/valid-el.txt @@ -1,4 +1,4 @@ -# RUN: llvm-mc --disassemble %s -triple=mipsel-unknown-linux -mattr=micromips \ +# RUN: llvm-mc --disassemble %s -triple=mipsel-unknown-linux -mattr=micromips,eva \ # RUN: | FileCheck %s 0xf9 0x4f # CHECK: addiusp -16 diff --git a/llvm/test/MC/Disassembler/Mips/micromips32r3/valid.txt b/llvm/test/MC/Disassembler/Mips/micromips32r3/valid.txt index 14c1625f336..af8e8ed1d22 100644 --- a/llvm/test/MC/Disassembler/Mips/micromips32r3/valid.txt +++ b/llvm/test/MC/Disassembler/Mips/micromips32r3/valid.txt @@ -1,4 +1,4 @@ -# RUN: llvm-mc --disassemble %s -triple=mips-unknown-linux -mattr=micromips \ +# RUN: llvm-mc --disassemble %s -triple=mips-unknown-linux -mattr=micromips,eva \ # RUN: | FileCheck %s 0x4f 0xf9 # CHECK: addiusp -16 diff --git a/llvm/test/MC/Disassembler/Mips/micromips32r6/valid.txt b/llvm/test/MC/Disassembler/Mips/micromips32r6/valid.txt index 462866d3347..00ec2be9a34 100644 --- a/llvm/test/MC/Disassembler/Mips/micromips32r6/valid.txt +++ b/llvm/test/MC/Disassembler/Mips/micromips32r6/valid.txt @@ -1,4 +1,4 @@ -# RUN: llvm-mc --disassemble %s -triple=mips-unknown-linux -mcpu=mips32r6 -mattr=micromips | FileCheck %s +# RUN: llvm-mc --disassemble %s -triple=mips-unknown-linux -mcpu=mips32r6 -mattr=micromips,eva | FileCheck %s 0x6f 0x83 # CHECK: addiur1sp $7, 4 0x6f 0x7e # CHECK: addiur2 $6, $7, -1 diff --git a/llvm/test/MC/Mips/micromips-control-instructions.s b/llvm/test/MC/Mips/micromips-control-instructions.s index 2276b492e3d..a8964bfec89 100644 --- a/llvm/test/MC/Mips/micromips-control-instructions.s +++ b/llvm/test/MC/Mips/micromips-control-instructions.s @@ -39,15 +39,7 @@ # CHECK-EL: tlbr # encoding: [0x00,0x00,0x7c,0x13] # CHECK-EL: tlbwi # encoding: [0x00,0x00,0x7c,0x23] # CHECK-EL: tlbwr # encoding: [0x00,0x00,0x7c,0x33] -# CHECK-EL: prefe 1, 8($5) # encoding: [0x25,0x60,0x08,0xa4] -# CHECK-EL: cachee 1, 8($5) # encoding: [0x25,0x60,0x08,0xa6] # CHECK-EL: prefx 1, $3($5) # encoding: [0x65,0x54,0xa0,0x09] -# CHECK-EL: swre $24, 5($3) # encoding: [0x03,0x63,0x05,0xa2] -# CHECK-EL: swle $24, 5($3) # encoding: [0x03,0x63,0x05,0xa0] -# CHECK-EL: lwre $24, 5($3) # encoding: [0x03,0x63,0x05,0x66] -# CHECK-EL: lwle $24, 2($4) # encoding: [0x04,0x63,0x02,0x64] -# CHECK-EL: lle $2, 8($4) # encoding: [0x44,0x60,0x08,0x6c] -# CHECK-EL: sce $2, 8($4) # encoding: [0x44,0x60,0x08,0xac] #------------------------------------------------------------------------------ # Big endian #------------------------------------------------------------------------------ @@ -81,15 +73,7 @@ # CHECK-EB: tlbr # encoding: [0x00,0x00,0x13,0x7c] # CHECK-EB: tlbwi # encoding: [0x00,0x00,0x23,0x7c] # CHECK-EB: tlbwr # encoding: [0x00,0x00,0x33,0x7c] -# CHECK-EB: prefe 1, 8($5) # encoding: [0x60,0x25,0xa4,0x08] -# CHECK-EB: cachee 1, 8($5) # encoding: [0x60,0x25,0xa6,0x08] # CHECK-EB: prefx 1, $3($5) # encoding: [0x54,0x65,0x09,0xa0] -# CHECK-EB: swre $24, 5($3) # encoding: [0x63,0x03,0xa2,0x05] -# CHECK-EB: swle $24, 5($3) # encoding: [0x63,0x03,0xa0,0x05] -# CHECK-EB: lwre $24, 5($3) # encoding: [0x63,0x03,0x66,0x05] -# CHECK-EB: lwle $24, 2($4) # encoding: [0x63,0x04,0x64,0x02] -# CHECK-EB: lle $2, 8($4) # encoding: [0x60,0x44,0x6c,0x08] -# CHECK-EB: sce $2, 8($4) # encoding: [0x60,0x44,0xac,0x08] sdbbp sdbbp 34 @@ -118,12 +102,5 @@ tlbr tlbwi tlbwr - prefe 1, 8($5) - cachee 1, 8($5) prefx 1, $3($5) - swre $24, 5($3) - swle $24, 5($3) - lwre $24, 5($3) - lwle $24, 2($4) - lle $2, 8($4) - sce $2, 8($4) + diff --git a/llvm/test/MC/Mips/micromips-eva.s b/llvm/test/MC/Mips/micromips-eva.s new file mode 100644 index 00000000000..d856ec1ba10 --- /dev/null +++ b/llvm/test/MC/Mips/micromips-eva.s @@ -0,0 +1,96 @@ +# RUN: llvm-mc %s -triple=mipsel -show-encoding -show-inst -mcpu=mips32r2 \ +# RUN: -mattr=+micromips,+eva | FileCheck -check-prefix=CHECK-EL %s +# RUN: llvm-mc %s -triple=mips -show-encoding -show-inst -mcpu=mips32r2 \ +# RUN: -mattr=+micromips,+eva | FileCheck -check-prefix=CHECK-EB %s +# Check that the assembler can handle the documented syntax +# for EVA instructions. +#------------------------------------------------------------------------------ +# microMIPS EVA Instructions +#------------------------------------------------------------------------------ +# Little endian +#------------------------------------------------------------------------------ +# CHECK-EL: prefe 1, 8($5) # encoding: [0x25,0x60,0x08,0xa4] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} PREFE_MM +# CHECK-EL: cachee 1, 8($5) # encoding: [0x25,0x60,0x08,0xa6] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} CACHEE_MM +# CHECK-EL: lle $2, 8($4) # encoding: [0x44,0x60,0x08,0x6c] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} LLE_MM +# CHECK-EL: sce $2, 8($4) # encoding: [0x44,0x60,0x08,0xac] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} SCE_MM +# CHECK-EL: swre $24, 5($3) # encoding: [0x03,0x63,0x05,0xa2] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} SWRE_MM +# CHECK-EL: swle $24, 5($3) # encoding: [0x03,0x63,0x05,0xa0] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} SWLE_MM +# CHECK-EL: lwre $24, 5($3) # encoding: [0x03,0x63,0x05,0x66] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} LWRE_MM +# CHECK-EL: lwle $24, 2($4) # encoding: [0x04,0x63,0x02,0x64] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} LWLE_MM +# CHECK-EL: lhue $4, 8($2) # encoding: [0x82,0x60,0x08,0x62] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} LHuE_M +# CHECK-EL: lbe $4, 8($2) # encoding: [0x82,0x60,0x08,0x68] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} LBE_MM +# CHECK-EL: lbue $4, 8($2) # encoding: [0x82,0x60,0x08,0x60] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} LBuE_MM +# CHECK-EL: lhe $4, 8($2) # encoding: [0x82,0x60,0x08,0x6a] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} LHE_MM +# CHECK-EL: lwe $4, 8($2) # encoding: [0x82,0x60,0x08,0x6e] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} LWE_MM +# CHECK-EL: sbe $5, 8($4) # encoding: [0xa4,0x60,0x08,0xa8] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} SBE_MM +# CHECK-EL: she $5, 8($4) # encoding: [0xa4,0x60,0x08,0xaa] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} SHE_MM +# CHECK-EL: swe $5, 8($4) # encoding: [0xa4,0x60,0x08,0xae] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} SWE_MM +#------------------------------------------------------------------------------ +# Big endian +#------------------------------------------------------------------------------ +# CHECK-EB: prefe 1, 8($5) # encoding: [0x60,0x25,0xa4,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} PREFE_MM +# CHECK-EB: cachee 1, 8($5) # encoding: [0x60,0x25,0xa6,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} CACHEE_MM +# CHECK-EB: lle $2, 8($4) # encoding: [0x60,0x44,0x6c,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} LLE_MM +# CHECK-EB: sce $2, 8($4) # encoding: [0x60,0x44,0xac,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} SCE_MM +# CHECK-EB: swre $24, 5($3) # encoding: [0x63,0x03,0xa2,0x05] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} SWRE_MM +# CHECK-EB: swle $24, 5($3) # encoding: [0x63,0x03,0xa0,0x05] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} SWLE_MM +# CHECK-EB: lwre $24, 5($3) # encoding: [0x63,0x03,0x66,0x05] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} LWRE_MM +# CHECK-EB: lwle $24, 2($4) # encoding: [0x63,0x04,0x64,0x02] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} LWLE_MM +# CHECK-EB: lhue $4, 8($2) # encoding: [0x60,0x82,0x62,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} LHuE_MM +# CHECK-EB: lbe $4, 8($2) # encoding: [0x60,0x82,0x68,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} LBE_MM +# CHECK-EB: lbue $4, 8($2) # encoding: [0x60,0x82,0x60,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} LBuE_MM +# CHECK-EB: lhe $4, 8($2) # encoding: [0x60,0x82,0x6a,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} LHE_MM +# CHECK-EB: lwe $4, 8($2) # encoding: [0x60,0x82,0x6e,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} LWE_MM +# CHECK-EB: sbe $5, 8($4) # encoding: [0x60,0xa4,0xa8,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} SBE_MM +# CHECK-EB: she $5, 8($4) # encoding: [0x60,0xa4,0xaa,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} SHE_MM +# CHECK-EB: swe $5, 8($4) # encoding: [0x60,0xa4,0xae,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} SWE_MM + + prefe 1, 8($5) + cachee 1, 8($5) + lle $2, 8($4) + sce $2, 8($4) + swre $24, 5($3) + swle $24, 5($3) + lwre $24, 5($3) + lwle $24, 2($4) + lhue $4, 8($2) + lbe $4, 8($2) + lbue $4, 8($2) + lhe $4, 8($2) + lwe $4, 8($2) + sbe $5, 8($4) + she $5, 8($4) + swe $5, 8($4) + diff --git a/llvm/test/MC/Mips/micromips-loadstore-instructions.s b/llvm/test/MC/Mips/micromips-loadstore-instructions.s index 4865713a3c7..007439e1df3 100644 --- a/llvm/test/MC/Mips/micromips-loadstore-instructions.s +++ b/llvm/test/MC/Mips/micromips-loadstore-instructions.s @@ -44,14 +44,6 @@ # CHECK-EL: swm32 $16, $17, 8($sp) # encoding: [0x5d,0x20,0x08,0xd0] # CHECK-EL: swp $16, 8($4) # encoding: [0x04,0x22,0x08,0x90] # CHECK-EL: lwp $16, 8($4) # encoding: [0x04,0x22,0x08,0x10] -# CHECK-EL: lhue $4, 8($2) # encoding: [0x82,0x60,0x08,0x62] -# CHECK-EL: lbe $4, 8($2) # encoding: [0x82,0x60,0x08,0x68] -# CHECK-EL: lbue $4, 8($2) # encoding: [0x82,0x60,0x08,0x60] -# CHECK-EL: lhe $4, 8($2) # encoding: [0x82,0x60,0x08,0x6a] -# CHECK-EL: lwe $4, 8($2) # encoding: [0x82,0x60,0x08,0x6e] -# CHECK-EL: sbe $5, 8($4) # encoding: [0xa4,0x60,0x08,0xa8] -# CHECK-EL: she $5, 8($4) # encoding: [0xa4,0x60,0x08,0xaa] -# CHECK-EL: swe $5, 8($4) # encoding: [0xa4,0x60,0x08,0xae] #------------------------------------------------------------------------------ # Big endian #------------------------------------------------------------------------------ @@ -90,14 +82,6 @@ # CHECK-EB: swm32 $16, $17, 8($sp) # encoding: [0x20,0x5d,0xd0,0x08] # CHECK-EB: swp $16, 8($4) # encoding: [0x22,0x04,0x90,0x08] # CHECK-EB: lwp $16, 8($4) # encoding: [0x22,0x04,0x10,0x08] -# CHECK-EB: lhue $4, 8($2) # encoding: [0x60,0x82,0x62,0x08] -# CHECK-EB: lbe $4, 8($2) # encoding: [0x60,0x82,0x68,0x08] -# CHECK-EB: lbue $4, 8($2) # encoding: [0x60,0x82,0x60,0x08] -# CHECK-EB: lhe $4, 8($2) # encoding: [0x60,0x82,0x6a,0x08] -# CHECK-EB: lwe $4, 8($2) # encoding: [0x60,0x82,0x6e,0x08] -# CHECK-EB: sbe $5, 8($4) # encoding: [0x60,0xa4,0xa8,0x08] -# CHECK-EB: she $5, 8($4) # encoding: [0x60,0xa4,0xaa,0x08] -# CHECK-EB: swe $5, 8($4) # encoding: [0x60,0xa4,0xae,0x08] lb $5, 8($4) lbu $6, 8($4) lh $2, 8($4) @@ -133,11 +117,4 @@ swm $16, $17, 8($sp) swp $16, 8($4) lwp $16, 8($4) - lhue $4, 8($2) - lbe $4, 8($2) - lbue $4, 8($2) - lhe $4, 8($2) - lwe $4, 8($2) - sbe $5, 8($4) - she $5, 8($4) - swe $5, 8($4) + diff --git a/llvm/test/MC/Mips/micromips/invalid.s b/llvm/test/MC/Mips/micromips/invalid.s index 47882fb0558..d067df90977 100644 --- a/llvm/test/MC/Mips/micromips/invalid.s +++ b/llvm/test/MC/Mips/micromips/invalid.s @@ -1,4 +1,4 @@ -# RUN: not llvm-mc %s -triple=mips -show-encoding -mattr=micromips 2>%t1 +# RUN: not llvm-mc %s -triple=mips -show-encoding -mattr=micromips,eva 2>%t1 # RUN: FileCheck %s < %t1 addiur1sp $7, 260 # CHECK: :[[@LINE]]:17: error: expected both 8-bit unsigned immediate and multiple of 4 diff --git a/llvm/test/MC/Mips/micromips/valid.s b/llvm/test/MC/Mips/micromips/valid.s index d3c5d595a2a..97db2335dcc 100644 --- a/llvm/test/MC/Mips/micromips/valid.s +++ b/llvm/test/MC/Mips/micromips/valid.s @@ -1,4 +1,4 @@ -# RUN: llvm-mc %s -triple=mips-unknown-linux -show-encoding -show-inst -mattr=micromips | FileCheck %s +# RUN: llvm-mc %s -triple=mips-unknown-linux -show-encoding -show-inst -mattr=micromips,eva | FileCheck %s .set noat addiusp -16 # CHECK: addiusp -16 # encoding: [0x4f,0xf9] diff --git a/llvm/test/MC/Mips/micromips32r6-eva.s b/llvm/test/MC/Mips/micromips32r6-eva.s new file mode 100644 index 00000000000..123b8259bd2 --- /dev/null +++ b/llvm/test/MC/Mips/micromips32r6-eva.s @@ -0,0 +1,76 @@ +# RUN: llvm-mc %s -triple=mipsel -show-encoding -show-inst -mcpu=mips32r6 \ +# RUN: -mattr=+micromips,+eva | FileCheck -check-prefix=CHECK-EL %s +# RUN: llvm-mc %s -triple=mips -show-encoding -show-inst -mcpu=mips32r6 \ +# RUN: -mattr=+micromips,+eva | FileCheck -check-prefix=CHECK-EB %s +# Check that the assembler can handle the documented syntax +# for EVA instructions. +#------------------------------------------------------------------------------ +# microMIPS EVA Instructions +#------------------------------------------------------------------------------ +# Little endian +#------------------------------------------------------------------------------ +# CHECK-EL: prefe 1, 8($5) # encoding: [0x25,0x60,0x08,0xa4] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} PREFE_MM +# CHECK-EL: cachee 1, 8($5) # encoding: [0x25,0x60,0x08,0xa6] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} CACHEE_MM +# CHECK-EL: lle $2, 8($4) # encoding: [0x44,0x60,0x08,0x6c] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} LLE_MM +# CHECK-EL: sce $2, 8($4) # encoding: [0x44,0x60,0x08,0xac] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} SCE_MM +# CHECK-EL: lhue $4, 8($2) # encoding: [0x82,0x60,0x08,0x62] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} LHuE_M +# CHECK-EL: lbe $4, 8($2) # encoding: [0x82,0x60,0x08,0x68] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} LBE_MM +# CHECK-EL: lbue $4, 8($2) # encoding: [0x82,0x60,0x08,0x60] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} LBuE_MM +# CHECK-EL: lhe $4, 8($2) # encoding: [0x82,0x60,0x08,0x6a] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} LHE_MM +# CHECK-EL: lwe $4, 8($2) # encoding: [0x82,0x60,0x08,0x6e] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} LWE_MM +# CHECK-EL: sbe $5, 8($4) # encoding: [0xa4,0x60,0x08,0xa8] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} SBE_MM +# CHECK-EL: she $5, 8($4) # encoding: [0xa4,0x60,0x08,0xaa] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} SHE_MM +# CHECK-EL: swe $5, 8($4) # encoding: [0xa4,0x60,0x08,0xae] +# CHECK-EL-NEXT: # <MCInst #{{[0-9]+}} SWE_MM +#------------------------------------------------------------------------------ +# Big endian +#------------------------------------------------------------------------------ +# CHECK-EB: prefe 1, 8($5) # encoding: [0x60,0x25,0xa4,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} PREFE_MM +# CHECK-EB: cachee 1, 8($5) # encoding: [0x60,0x25,0xa6,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} CACHEE_MM +# CHECK-EB: lle $2, 8($4) # encoding: [0x60,0x44,0x6c,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} LLE_MM +# CHECK-EB: sce $2, 8($4) # encoding: [0x60,0x44,0xac,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} SCE_MM +# CHECK-EB: lhue $4, 8($2) # encoding: [0x60,0x82,0x62,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} LHuE_MM +# CHECK-EB: lbe $4, 8($2) # encoding: [0x60,0x82,0x68,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} LBE_MM +# CHECK-EB: lbue $4, 8($2) # encoding: [0x60,0x82,0x60,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} LBuE_MM +# CHECK-EB: lhe $4, 8($2) # encoding: [0x60,0x82,0x6a,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} LHE_MM +# CHECK-EB: lwe $4, 8($2) # encoding: [0x60,0x82,0x6e,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} LWE_MM +# CHECK-EB: sbe $5, 8($4) # encoding: [0x60,0xa4,0xa8,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} SBE_MM +# CHECK-EB: she $5, 8($4) # encoding: [0x60,0xa4,0xaa,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} SHE_MM +# CHECK-EB: swe $5, 8($4) # encoding: [0x60,0xa4,0xae,0x08] +# CHECK-EB-NEXT: # <MCInst #{{[0-9]+}} SWE_MM + + prefe 1, 8($5) + cachee 1, 8($5) + lle $2, 8($4) + sce $2, 8($4) + lhue $4, 8($2) + lbe $4, 8($2) + lbue $4, 8($2) + lhe $4, 8($2) + lwe $4, 8($2) + sbe $5, 8($4) + she $5, 8($4) + swe $5, 8($4) + diff --git a/llvm/test/MC/Mips/micromips32r6/invalid.s b/llvm/test/MC/Mips/micromips32r6/invalid.s index 218202bc505..1f7d40ac10d 100644 --- a/llvm/test/MC/Mips/micromips32r6/invalid.s +++ b/llvm/test/MC/Mips/micromips32r6/invalid.s @@ -1,4 +1,4 @@ -# RUN: not llvm-mc %s -triple=mips -show-encoding -mcpu=mips32r6 -mattr=micromips 2>%t1 +# RUN: not llvm-mc %s -triple=mips -show-encoding -mcpu=mips32r6 -mattr=+micromips,+eva 2>%t1 # RUN: FileCheck %s < %t1 addiur1sp $7, 260 # CHECK: :[[@LINE]]:17: error: expected both 8-bit unsigned immediate and multiple of 4 diff --git a/llvm/test/MC/Mips/micromips32r6/valid.s b/llvm/test/MC/Mips/micromips32r6/valid.s index e64864f1d76..e56138e66ff 100644 --- a/llvm/test/MC/Mips/micromips32r6/valid.s +++ b/llvm/test/MC/Mips/micromips32r6/valid.s @@ -68,9 +68,7 @@ lapc $7, 1048572 # CHECK: lapc $7, 1048572 # encoding: [0x78,0xe3,0xff,0xff] lapc $7, -1048576 # CHECK: lapc $7, -1048576 # encoding: [0x78,0xe4,0x00,0x00] lh $2, 8($4) # CHECK: lh $2, 8($4) # encoding: [0x3c,0x44,0x00,0x08] - lhe $4, 8($2) # CHECK: lhe $4, 8($2) # encoding: [0x60,0x82,0x6a,0x08] lhu $4, 8($2) # CHECK: lhu $4, 8($2) # encoding: [0x34,0x82,0x00,0x08] - lhue $4, 8($2) # CHECK: lhue $4, 8($2) # encoding: [0x60,0x82,0x62,0x08] lsa $2, $3, $4, 3 # CHECK: lsa $2, $3, $4, 3 # encoding: [0x00,0x43,0x24,0x0f] lwpc $2,268 # CHECK: lwpc $2, 268 # encoding: [0x78,0x48,0x00,0x43] lwm $16, $17, $ra, 8($sp) # CHECK: lwm16 $16, $17, $ra, 8($sp) # encoding: [0x45,0x22] @@ -148,7 +146,6 @@ xor $3, $4, $5 # CHECK: xor $3, $4, $5 # encoding: [0x00,0xa4,0x1b,0x10] xori $3, $4, 1234 # CHECK: xori $3, $4, 1234 # encoding: [0x70,0x64,0x04,0xd2] sw $5, 4($6) # CHECK: sw $5, 4($6) # encoding: [0xf8,0xa6,0x00,0x04] - swe $5, 8($4) # CHECK: swe $5, 8($4) # encoding: [0x60,0xa4,0xae,0x08] add.s $f3, $f4, $f5 # CHECK: add.s $f3, $f4, $f5 # encoding: [0x54,0xa4,0x18,0x30] add.d $f2, $f4, $f6 # CHECK: add.d $f2, $f4, $f6 # encoding: [0x54,0xc4,0x11,0x30] # CHECK-NEXT: # <MCInst #{{[0-9]+}} FADD_D64_MM @@ -260,12 +257,7 @@ lbu16 $3, 4($17) # CHECK: lbu16 $3, 4($17) # encoding: [0x09,0x94] lbu16 $3, -1($17) # CHECK: lbu16 $3, -1($17) # encoding: [0x09,0x9f] sb $4, 6($5) # CHECK: sb $4, 6($5) # encoding: [0x18,0x85,0x00,0x06] - sbe $4, 6($5) # CHECK: sbe $4, 6($5) # encoding: [0x60,0x85,0xa8,0x06] - sce $4, 6($5) # CHECK: sce $4, 6($5) # encoding: [0x60,0x85,0xac,0x06] sh $4, 6($5) # CHECK: sh $4, 6($5) # encoding: [0x38,0x85,0x00,0x06] - she $4, 6($5) # CHECK: she $4, 6($5) # encoding: [0x60,0x85,0xaa,0x06] - lle $4, 6($5) # CHECK: lle $4, 6($5) # encoding: [0x60,0x85,0x6c,0x06] - lwe $4, 6($5) # CHECK: lwe $4, 6($5) # encoding: [0x60,0x85,0x6e,0x06] lw $4, 6($5) # CHECK: lw $4, 6($5) # encoding: [0xfc,0x85,0x00,0x06] lui $6, 17767 # CHECK: lui $6, 17767 # encoding: [0x10,0xc0,0x45,0x67] addu16 $6, $17, $4 # CHECK: addu16 $6, $17, $4 # encoding: [0x04,0xcc] @@ -275,8 +267,6 @@ or16 $3, $7 # CHECK: or16 $3, $7 # encoding: [0x45,0xf9] sll16 $3, $6, 8 # CHECK: sll16 $3, $6, 8 # encoding: [0x25,0xe0] srl16 $3, $6, 8 # CHECK: srl16 $3, $6, 8 # encoding: [0x25,0xe1] - prefe 1, 8($5) # CHECK: prefe 1, 8($5) # encoding: [0x60,0x25,0xa4,0x08] - cachee 1, 8($5) # CHECK: cachee 1, 8($5) # encoding: [0x60,0x25,0xa6,0x08] teq $8, $9 # CHECK: teq $8, $9 # encoding: [0x01,0x28,0x00,0x3c] teq $5, $7, 15 # CHECK: teq $5, $7, 15 # encoding: [0x00,0xe5,0xf0,0x3c] tge $7, $10 # CHECK: tge $7, $10 # encoding: [0x01,0x47,0x02,0x3c] @@ -297,8 +287,6 @@ xor16 $17, $5 # CHECK: xor16 $17, $5 # encoding: [0x44,0xd8] lb $4, 8($5) # CHECK: lb $4, 8($5) # encoding: [0x1c,0x85,0x00,0x08] lbu $4, 8($5) # CHECK: lbu $4, 8($5) # encoding: [0x14,0x85,0x00,0x08] - lbe $4, 8($5) # CHECK: lbe $4, 8($5) # encoding: [0x60,0x85,0x68,0x08] - lbue $4, 8($5) # CHECK: lbue $4, 8($5) # encoding: [0x60,0x85,0x60,0x08] recip.s $f2, $f4 # CHECK: recip.s $f2, $f4 # encoding: [0x54,0x44,0x12,0x3b] recip.d $f2, $f4 # CHECK: recip.d $f2, $f4 # encoding: [0x54,0x44,0x52,0x3b] rint.s $f2, $f4 # CHECK: rint.s $f2, $f4 # encoding: [0x54,0x82,0x00,0x20] |