summaryrefslogtreecommitdiffstats
path: root/llvm/test/MC
diff options
context:
space:
mode:
authorPetar Jovanovic <petar.jovanovic@imgtec.com>2017-06-07 14:48:46 +0000
committerPetar Jovanovic <petar.jovanovic@imgtec.com>2017-06-07 14:48:46 +0000
commit2f5f8e947a14399b796d3f2c861056e9e654853c (patch)
tree4c635063fea77739cb83027b66485be48c302eb1 /llvm/test/MC
parentaf515d94972443b2d7ffdb879e5ff9fdaa2cf9ec (diff)
downloadbcm5719-llvm-2f5f8e947a14399b796d3f2c861056e9e654853c.tar.gz
bcm5719-llvm-2f5f8e947a14399b796d3f2c861056e9e654853c.zip
[mips][dsp] Modify repl.ph to accept signed immediate values
Changed immediate type for repl.ph from uimm10 to simm10 as per the specs. Repl.qb still accepts uimm8. Both instructions now mimic the behaviour of GNU as. Patch by Stefan Maksimovic. Differential Revision: https://reviews.llvm.org/D33594 llvm-svn: 304918
Diffstat (limited to 'llvm/test/MC')
-rw-r--r--llvm/test/MC/Disassembler/Mips/micromips-dsp/valid.txt2
-rw-r--r--llvm/test/MC/Mips/dsp/invalid.s4
-rw-r--r--llvm/test/MC/Mips/micromips-dsp/invalid.s2
-rw-r--r--llvm/test/MC/Mips/micromips-dsp/valid.s2
4 files changed, 6 insertions, 4 deletions
diff --git a/llvm/test/MC/Disassembler/Mips/micromips-dsp/valid.txt b/llvm/test/MC/Disassembler/Mips/micromips-dsp/valid.txt
index f3d6f3dc036..a373bcd9d6a 100644
--- a/llvm/test/MC/Disassembler/Mips/micromips-dsp/valid.txt
+++ b/llvm/test/MC/Disassembler/Mips/micromips-dsp/valid.txt
@@ -94,7 +94,7 @@
0x00 0x01 0x70 0x7c # CHECK: mtlo $1, $ac1
0x00 0x22 0xf1 0x3c # CHECK: raddu.w.qb $1, $2
0x00 0x20 0x86 0x7c # CHECK: rddsp $1, 2
-0x02 0x00 0x08 0x3d # CHECK: repl.ph $1, 512
+0x00 0x02 0x08 0x3d # CHECK: repl.ph $1, 2
0x00 0x30 0x05 0xfc # CHECK: repl.qb $1, 128
0x00 0x22 0x03 0x3c # CHECK: replv.ph $1, $2
0x00 0x22 0x13 0x3c # CHECK: replv.qb $1, $2
diff --git a/llvm/test/MC/Mips/dsp/invalid.s b/llvm/test/MC/Mips/dsp/invalid.s
index 1d50b829985..f58a44560c5 100644
--- a/llvm/test/MC/Mips/dsp/invalid.s
+++ b/llvm/test/MC/Mips/dsp/invalid.s
@@ -31,8 +31,8 @@
shilo $ac1, -64 # CHECK: :[[@LINE]]:15: error: expected 6-bit signed immediate
repl.qb $2, -1 # CHECK: :[[@LINE]]:15: error: expected 8-bit unsigned immediate
repl.qb $2, 256 # CHECK: :[[@LINE]]:15: error: expected 8-bit unsigned immediate
- repl.ph $2, -1 # CHECK: :[[@LINE]]:15: error: expected 10-bit unsigned immediate
- repl.ph $2, 1024 # CHECK: :[[@LINE]]:15: error: expected 10-bit unsigned immediate
+ repl.ph $2, -513 # CHECK: :[[@LINE]]:15: error: expected 10-bit signed immediate
+ repl.ph $2, 512 # CHECK: :[[@LINE]]:15: error: expected 10-bit signed immediate
rddsp $2, -1 # CHECK: :[[@LINE]]:13: error: expected 10-bit unsigned immediate
rddsp $2, 1024 # CHECK: :[[@LINE]]:13: error: expected 10-bit unsigned immediate
wrdsp $5, -1 # CHECK: :[[@LINE]]:13: error: expected 10-bit unsigned immediate
diff --git a/llvm/test/MC/Mips/micromips-dsp/invalid.s b/llvm/test/MC/Mips/micromips-dsp/invalid.s
index 8e6fedbf0b9..05fc77440d3 100644
--- a/llvm/test/MC/Mips/micromips-dsp/invalid.s
+++ b/llvm/test/MC/Mips/micromips-dsp/invalid.s
@@ -1,6 +1,8 @@
# RUN: not llvm-mc %s -triple=mips-unknown-linux -show-encoding -mcpu=mips32r6 -mattr=micromips -mattr=+dsp 2>%t1
# RUN: FileCheck %s < %t1
+ repl.ph $2, -513 # CHECK: :[[@LINE]]:15: error: expected 10-bit signed immediate
+ repl.ph $2, 512 # CHECK: :[[@LINE]]:15: error: expected 10-bit signed immediate
shll.ph $3, $4, 16 # CHECK: :[[@LINE]]:19: error: expected 4-bit unsigned immediate
shll.ph $3, $4, -1 # CHECK: :[[@LINE]]:19: error: expected 4-bit unsigned immediate
shll_s.ph $3, $4, 16 # CHECK: :[[@LINE]]:21: error: expected 4-bit unsigned immediate
diff --git a/llvm/test/MC/Mips/micromips-dsp/valid.s b/llvm/test/MC/Mips/micromips-dsp/valid.s
index d1f5d0f3ae8..ed279f3eb53 100644
--- a/llvm/test/MC/Mips/micromips-dsp/valid.s
+++ b/llvm/test/MC/Mips/micromips-dsp/valid.s
@@ -95,7 +95,7 @@
mtlo $1, $ac1 # CHECK: mtlo $1, $ac1 # encoding: [0x00,0x01,0x70,0x7c]
raddu.w.qb $1, $2 # CHECK: raddu.w.qb $1, $2 # encoding: [0x00,0x22,0xf1,0x3c]
rddsp $1, 2 # CHECK: rddsp $1, 2 # encoding: [0x00,0x20,0x86,0x7c]
- repl.ph $1, 512 # CHECK: repl.ph $1, 512 # encoding: [0x02,0x00,0x08,0x3d]
+ repl.ph $1, 2 # CHECK: repl.ph $1, 2 # encoding: [0x00,0x02,0x08,0x3d]
repl.qb $1, 128 # CHECK: repl.qb $1, 128 # encoding: [0x00,0x30,0x05,0xfc]
replv.ph $1, $2 # CHECK: replv.ph $1, $2 # encoding: [0x00,0x22,0x03,0x3c]
replv.qb $1, $2 # CHECK: replv.qb $1, $2 # encoding: [0x00,0x22,0x13,0x3c]
OpenPOWER on IntegriCloud