aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorPeter Bergner <bergner@vnet.ibm.com>2016-05-26 19:06:51 -0500
committerPeter Bergner <bergner@vnet.ibm.com>2016-05-26 19:06:51 -0500
commit19dfcc89e8d94526f011242041b700ede8834996 (patch)
tree62742264ecbb0ab50de76a1136fcb383628cd331 /gas
parent5e0bc41893d659b2935fca7595411c08ed18546c (diff)
downloadgdb-19dfcc89e8d94526f011242041b700ede8834996.zip
gdb-19dfcc89e8d94526f011242041b700ede8834996.tar.gz
gdb-19dfcc89e8d94526f011242041b700ede8834996.tar.bz2
Add support for new POWER ISA 3.0 instructions.
opcodes/ * ppc-opc.c (CY): New define. Document it. (powerpc_opcodes) <addex[.], lwzmx, vmsumudm>: New mnemonics. gas/ * testsuite/gas/ppc/altivec3.d <vmsumudm>: Add test. * testsuite/gas/ppc/altivec3.s: Likewise. * testsuite/gas/ppc/power9.d <addex[.], lwzmx, vmsumudm>: Add tests. * testsuite/gas/ppc/power9.s: Likewise.
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog7
-rw-r--r--gas/testsuite/gas/ppc/altivec3.d1
-rw-r--r--gas/testsuite/gas/ppc/altivec3.s1
-rw-r--r--gas/testsuite/gas/ppc/power9.d9
-rw-r--r--gas/testsuite/gas/ppc/power9.s9
5 files changed, 27 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 78d548f..2d132c5 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,10 @@
+2016-05-26 Peter Bergner <bergner@vnet.ibm.com>
+
+ * testsuite/gas/ppc/altivec3.d <vmsumudm>: Add test.
+ * testsuite/gas/ppc/altivec3.s: Likewise.
+ * testsuite/gas/ppc/power9.d <addex[.], lwzmx, vmsumudm>: Add tests.
+ * testsuite/gas/ppc/power9.s: Likewise.
+
2016-05-26 H.J. Lu <hongjiu.lu@intel.com>
* testsuite/gas/i386/avx512vl-2.l: Append "#pass".
diff --git a/gas/testsuite/gas/ppc/altivec3.d b/gas/testsuite/gas/ppc/altivec3.d
index 1d05a8f..7b7ae0b 100644
--- a/gas/testsuite/gas/ppc/altivec3.d
+++ b/gas/testsuite/gas/ppc/altivec3.d
@@ -76,4 +76,5 @@ Disassembly of section \.text:
.*: (12 b5 17 44|44 17 b5 12) vslv v21,v21,v2
.*: (11 e9 0f 4d|4d 0f e9 11) vextuhrx r15,r9,v1
.*: (12 b1 87 8d|8d 87 b1 12) vextuwrx r21,r17,v16
+.*: (12 95 b5 e3|e3 b5 95 12) vmsumudm v20,v21,v22,v23
#pass
diff --git a/gas/testsuite/gas/ppc/altivec3.s b/gas/testsuite/gas/ppc/altivec3.s
index 6217da5..7fa28b3 100644
--- a/gas/testsuite/gas/ppc/altivec3.s
+++ b/gas/testsuite/gas/ppc/altivec3.s
@@ -67,3 +67,4 @@ start:
vslv 21,21,2
vextuhrx 15,9,1
vextuwrx 21,17,16
+ vmsumudm 20,21,22,23
diff --git a/gas/testsuite/gas/ppc/power9.d b/gas/testsuite/gas/ppc/power9.d
index a1d4681..0c86898 100644
--- a/gas/testsuite/gas/ppc/power9.d
+++ b/gas/testsuite/gas/ppc/power9.d
@@ -365,6 +365,8 @@ Disassembly of section \.text:
.*: (7c 00 f6 e4|e4 f6 00 7c) rmieg r30
.*: (7d 40 7a 6a|6a 7a 40 7d) ldmx r10,0,r15
.*: (7d 43 7a 6a|6a 7a 43 7d) ldmx r10,r3,r15
+.*: (7d 60 83 6a|6a 83 60 7d) lwzmx r11,0,r16
+.*: (7d 63 83 6a|6a 83 63 7d) lwzmx r11,r3,r16
.*: (4c 00 02 e4|e4 02 00 4c) stop
.*: (7c 00 00 3c|3c 00 00 7c) wait
.*: (7c 00 00 3c|3c 00 00 7c) wait
@@ -383,4 +385,11 @@ Disassembly of section \.text:
.*: (f0 6d bc 07|07 bc 6d f0) xsmaxcdp vs35,vs45,vs55
.*: (f0 8e c4 c7|c7 c4 8e f0) xsminjdp vs36,vs46,vs56
.*: (f0 af cc 87|87 cc af f0) xsmaxjdp vs37,vs47,vs57
+.*: (12 95 b5 e3|e3 b5 95 12) vmsumudm v20,v21,v22,v23
+.*: (7d 6c 69 54|54 69 6c 7d) addex r11,r12,r13,0
+.*: (7d 6c 6b 54|54 6b 6c 7d) addex r11,r12,r13,1
+.*: (7d 6c 6d 54|54 6d 6c 7d) addex r11,r12,r13,2
+.*: (7e b6 b9 55|55 b9 b6 7e) addex\. r21,r22,r23,0
+.*: (7e b6 bb 55|55 bb b6 7e) addex\. r21,r22,r23,1
+.*: (7e b6 bd 55|55 bd b6 7e) addex\. r21,r22,r23,2
#pass
diff --git a/gas/testsuite/gas/ppc/power9.s b/gas/testsuite/gas/ppc/power9.s
index 34576b7..8d33d6c 100644
--- a/gas/testsuite/gas/ppc/power9.s
+++ b/gas/testsuite/gas/ppc/power9.s
@@ -356,6 +356,8 @@ power9:
rmieg 30
ldmx 10,0,15
ldmx 10,3,15
+ lwzmx 11,0,16
+ lwzmx 11,3,16
stop
wait
wait 0
@@ -374,3 +376,10 @@ power9:
xsmaxcdp 35,45,55
xsminjdp 36,46,56
xsmaxjdp 37,47,57
+ vmsumudm 20,21,22,23
+ addex 11,12,13,0
+ addex 11,12,13,1
+ addex 11,12,13,2
+ addex. 21,22,23,0
+ addex. 21,22,23,1
+ addex. 21,22,23,2