919 lines
28 KiB
Diff
919 lines
28 KiB
Diff
From d1fd0f2d0da3171a8678c7e31bb1863a53dfe1c2 Mon Sep 17 00:00:00 2001
|
||
From: chenyuanfeng <yuanfeng.chen@shingroup.cn>
|
||
Date: Wed, 3 Jan 2024 14:26:27 +0800
|
||
Subject: [PATCH] PPC-gas-supported-c2000
|
||
|
||
---
|
||
binutils/ChangeLog-2024 | 29 +++++
|
||
binutils/doc/binutils.info | 2 +-
|
||
binutils/doc/binutils.texi | 2 +-
|
||
gas/config/tc-ppc.c | 2 +
|
||
gas/doc/as.info | 5 +-
|
||
gas/doc/as.texi | 2 +-
|
||
gas/doc/c-ppc.texi | 3 +
|
||
gas/po/gas.pot | 231 +++++++++++++++++++------------------
|
||
include/opcode/ppc.h | 7 ++
|
||
opcodes/ppc-dis.c | 21 ++--
|
||
opcodes/ppc-opc.c | 2 +-
|
||
11 files changed, 180 insertions(+), 126 deletions(-)
|
||
create mode 100644 binutils/ChangeLog-2024
|
||
mode change 100644 => 100755 gas/po/gas.pot
|
||
|
||
diff --git a/binutils/ChangeLog-2024 b/binutils/ChangeLog-2024
|
||
new file mode 100644
|
||
index 00000000..caf4b43d
|
||
--- /dev/null
|
||
+++ b/binutils/ChangeLog-2024
|
||
@@ -0,0 +1,29 @@
|
||
+2024-01-03 YuanFeng Chen <yuanfeng.chen@shingroup.cn>
|
||
+
|
||
+ * config/tc-ppc.c (md_show_usage): Add -mc2000 options.
|
||
+ * ppc.h : (PPC_OPCODE_HTM): Define.
|
||
+ (PPC_OPCODE_C2000): Likewise.
|
||
+ * ppc-dis.c (PPCHTM): Define as PPC_OPCODE_HTM.
|
||
+ (ppc_opts): Add "c2000" entry.
|
||
+ (ppc_opts): "power8","power9","power10", "libresoc", "future" entries add PPC_OPCODE_HTM flag.
|
||
+ * ppc-opc.c : PPCHTM defined as PPC_OPCODE_HTM instead of PPC_OPCODE_POWER8.
|
||
+ * doc/binutils.texi (PowerPC -M option): Mention c2000.
|
||
+ * doc/as.texi (Target PowerPC optins): Mention c2000.
|
||
+ * doc/c-ppc.texi (PowerPC-Opts): Document "-mc2000".
|
||
+ * po/gas.pot: Regenerate.
|
||
+
|
||
+
|
||
+For older changes see ChangeLog-2020
|
||
+
|
||
+Copyright (C) 2024 Free Software Foundation, Inc.
|
||
+
|
||
+Copying and distribution of this file, with or without modification,
|
||
+are permitted in any medium without royalty provided the copyright
|
||
+notice and this notice are preserved.
|
||
+
|
||
+Local Variables:
|
||
+mode: change-log
|
||
+left-margin: 8
|
||
+fill-column: 74
|
||
+version-control: never
|
||
+End:
|
||
\ No newline at end of file
|
||
diff --git a/binutils/doc/binutils.info b/binutils/doc/binutils.info
|
||
index 56b7005c..9b13580f 100644
|
||
--- a/binutils/doc/binutils.info
|
||
+++ b/binutils/doc/binutils.info
|
||
@@ -2335,7 +2335,7 @@ given.
|
||
'efs', 'power4', 'power5', 'power6', 'power7', 'power8', 'power9',
|
||
'power10', 'ppc', 'ppc32', 'ppc64', 'ppc64bridge', 'ppcps', 'pwr',
|
||
'pwr2', 'pwr4', 'pwr5', 'pwr5x', 'pwr6', 'pwr7', 'pwr8', 'pwr9',
|
||
- 'pwr10', 'pwrx', 'titan', 'vle', and 'future'. '32' and '64'
|
||
+ 'pwr10', 'pwrx', 'titan', 'c2000', 'vle', and 'future'. '32' and '64'
|
||
modify the default or a prior CPU selection, disabling and enabling
|
||
64-bit insns respectively. In addition, 'altivec', 'any', 'lsp',
|
||
'htm', 'vsx', 'spe' and 'spe2' add capabilities to a previous _or
|
||
diff --git a/binutils/doc/binutils.texi b/binutils/doc/binutils.texi
|
||
index e48a48dd..e33d5beb 100644
|
||
--- a/binutils/doc/binutils.texi
|
||
+++ b/binutils/doc/binutils.texi
|
||
@@ -2648,7 +2648,7 @@ rather than @code{li}. All of the @option{-m} arguments for
|
||
@option{ppc32}, @option{ppc64}, @option{ppc64bridge}, @option{ppcps},
|
||
@option{pwr}, @option{pwr2}, @option{pwr4}, @option{pwr5}, @option{pwr5x},
|
||
@option{pwr6}, @option{pwr7}, @option{pwr8}, @option{pwr9}, @option{pwr10},
|
||
-@option{pwrx}, @option{titan}, @option{vle}, and @option{future}.
|
||
+@option{pwrx}, @option{titan}, @option{c2000}, @option{vle}, and @option{future}.
|
||
@option{32} and @option{64} modify the default or a prior CPU
|
||
selection, disabling and enabling 64-bit insns respectively. In
|
||
addition, @option{altivec}, @option{any}, @option{lsp}, @option{htm},
|
||
diff --git a/gas/config/tc-ppc.c b/gas/config/tc-ppc.c
|
||
index 9450fa74..f904c7ed 100644
|
||
--- a/gas/config/tc-ppc.c
|
||
+++ b/gas/config/tc-ppc.c
|
||
@@ -1426,6 +1426,8 @@ PowerPC options:\n"));
|
||
fprintf (stream, _("\
|
||
-mtitan generate code for AppliedMicro Titan core complex\n"));
|
||
fprintf (stream, _("\
|
||
+-mc2000 generate code for Hexin C2000 architecture\n"));
|
||
+ fprintf (stream, _("\
|
||
-mregnames Allow symbolic names for registers\n"));
|
||
fprintf (stream, _("\
|
||
-mno-regnames Do not allow symbolic names for registers\n"));
|
||
diff --git a/gas/doc/as.info b/gas/doc/as.info
|
||
index 37793fa5..6c8fdcf7 100644
|
||
--- a/gas/doc/as.info
|
||
+++ b/gas/doc/as.info
|
||
@@ -288,7 +288,7 @@ Command-Line Options: Invoking.
|
||
-mbroadway|-mppc64|-m620|-me500|-e500x2|-me500mc|-me500mc64|-me5500|
|
||
-me6500|-mppc64bridge|-mbooke|-mpower4|-mpwr4|-mpower5|-mpwr5|-mpwr5x|
|
||
-mpower6|-mpwr6|-mpower7|-mpwr7|-mpower8|-mpwr8|-mpower9|-mpwr9-ma2|
|
||
- -mcell|-mspe|-mspe2|-mtitan|-me300|-mcom]
|
||
+ -mcell|-mspe|-mspe2|-mtitan|-mc2000|-me300|-mcom]
|
||
[-many] [-maltivec|-mvsx|-mhtm|-mvle]
|
||
[-mregnames|-mno-regnames]
|
||
[-mrelocatable|-mrelocatable-lib|-K PIC] [-memb]
|
||
@@ -18366,6 +18366,9 @@ architecture reference manual.
|
||
'-mfuture'
|
||
Generate code for 'future' architecture.
|
||
|
||
+'-mc2000'
|
||
+ Generate code for Hexin C2000 architecture.
|
||
+
|
||
'-mcell'
|
||
'-mcell'
|
||
Generate code for Cell Broadband Engine architecture.
|
||
diff --git a/gas/doc/as.texi b/gas/doc/as.texi
|
||
index bbdfa4bf..d046c18e 100644
|
||
--- a/gas/doc/as.texi
|
||
+++ b/gas/doc/as.texi
|
||
@@ -536,7 +536,7 @@ gcc(1), ld(1), and the Info entries for @file{binutils} and @file{ld}.
|
||
@b{-mbroadway}|@b{-mppc64}|@b{-m620}|@b{-me500}|@b{-e500x2}|@b{-me500mc}|@b{-me500mc64}|@b{-me5500}|
|
||
@b{-me6500}|@b{-mppc64bridge}|@b{-mbooke}|@b{-mpower4}|@b{-mpwr4}|@b{-mpower5}|@b{-mpwr5}|@b{-mpwr5x}|
|
||
@b{-mpower6}|@b{-mpwr6}|@b{-mpower7}|@b{-mpwr7}|@b{-mpower8}|@b{-mpwr8}|@b{-mpower9}|@b{-mpwr9}@b{-ma2}|
|
||
- @b{-mcell}|@b{-mspe}|@b{-mspe2}|@b{-mtitan}|@b{-me300}|@b{-mcom}]
|
||
+ @b{-mcell}|@b{-mspe}|@b{-mspe2}|@b{-mtitan}|@b{-mc2000}|@b{-me300}|@b{-mcom}]
|
||
[@b{-many}] [@b{-maltivec}|@b{-mvsx}|@b{-mhtm}|@b{-mvle}]
|
||
[@b{-mregnames}|@b{-mno-regnames}]
|
||
[@b{-mrelocatable}|@b{-mrelocatable-lib}|@b{-K PIC}] [@b{-memb}]
|
||
diff --git a/gas/doc/c-ppc.texi b/gas/doc/c-ppc.texi
|
||
index f1dc17c6..115b730c 100644
|
||
--- a/gas/doc/c-ppc.texi
|
||
+++ b/gas/doc/c-ppc.texi
|
||
@@ -159,6 +159,9 @@ Generate code for Power10 architecture.
|
||
@item -mfuture
|
||
Generate code for 'future' architecture.
|
||
|
||
+@item -mc2000
|
||
+Generate code for Hexin C2000 architecture.
|
||
+
|
||
@item -mcell
|
||
@item -mcell
|
||
Generate code for Cell Broadband Engine architecture.
|
||
diff --git a/gas/po/gas.pot b/gas/po/gas.pot
|
||
old mode 100644
|
||
new mode 100755
|
||
index 09c2411b..df3a81e1
|
||
--- a/gas/po/gas.pot
|
||
+++ b/gas/po/gas.pot
|
||
@@ -8,10 +8,11 @@ msgid ""
|
||
msgstr ""
|
||
"Project-Id-Version: PACKAGE VERSION\n"
|
||
"Report-Msgid-Bugs-To: https://sourceware.org/bugzilla/\n"
|
||
-"POT-Creation-Date: 2023-01-14 13:17+0000\n"
|
||
+"POT-Creation-Date: 2024-01-03 14:12+0800\n"
|
||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||
+"Language: \n"
|
||
"MIME-Version: 1.0\n"
|
||
"Content-Type: text/plain; charset=CHARSET\n"
|
||
"Content-Transfer-Encoding: 8bit\n"
|
||
@@ -647,7 +648,7 @@ msgstr ""
|
||
#: cgen.c:106 config/tc-alpha.c:2094 config/tc-alpha.c:2118
|
||
#: config/tc-arc.c:4072 config/tc-arc.c:4145 config/tc-d10v.c:550
|
||
#: config/tc-d30v.c:534 config/tc-mn10200.c:1091 config/tc-mn10300.c:1752
|
||
-#: config/tc-ppc.c:3957 config/tc-s390.c:1334 config/tc-s390.c:1457
|
||
+#: config/tc-ppc.c:3959 config/tc-s390.c:1334 config/tc-s390.c:1457
|
||
#: config/tc-s390.c:1591 config/tc-v850.c:2535 config/tc-v850.c:2606
|
||
#: config/tc-v850.c:2653 config/tc-v850.c:2690 config/tc-v850.c:2727
|
||
#: config/tc-v850.c:2990
|
||
@@ -655,7 +656,7 @@ msgid "too many fixups"
|
||
msgstr ""
|
||
|
||
#: cgen.c:371 cgen.c:391 config/tc-d10v.c:461 config/tc-d30v.c:450
|
||
-#: config/tc-mn10200.c:1033 config/tc-mn10300.c:1677 config/tc-ppc.c:3479
|
||
+#: config/tc-mn10200.c:1033 config/tc-mn10300.c:1677 config/tc-ppc.c:3481
|
||
#: config/tc-s390.c:1318 config/tc-v850.c:2644 config/tc-v850.c:2678
|
||
#: config/tc-v850.c:2718 config/tc-v850.c:2963 config/tc-z80.c:785
|
||
msgid "illegal operand"
|
||
@@ -664,7 +665,7 @@ msgstr ""
|
||
#: cgen.c:395 config/tc-avr.c:910 config/tc-d10v.c:463 config/tc-d30v.c:452
|
||
#: config/tc-h8300.c:493 config/tc-mcore.c:662 config/tc-microblaze.c:613
|
||
#: config/tc-mmix.c:495 config/tc-mn10200.c:1036 config/tc-mn10300.c:1680
|
||
-#: config/tc-msp430.c:417 config/tc-ppc.c:3481 config/tc-s390.c:1323
|
||
+#: config/tc-msp430.c:417 config/tc-ppc.c:3483 config/tc-s390.c:1323
|
||
#: config/tc-sh.c:988 config/tc-v850.c:2648 config/tc-v850.c:2682
|
||
#: config/tc-v850.c:2722 config/tc-v850.c:2966 config/tc-xgate.c:895
|
||
#: config/tc-z80.c:932 config/tc-z8k.c:349
|
||
@@ -688,7 +689,7 @@ msgstr ""
|
||
msgid "expression too complex"
|
||
msgstr ""
|
||
|
||
-#: cgen.c:959 config/tc-ppc.c:7484 config/tc-s390.c:2373 config/tc-v850.c:3499
|
||
+#: cgen.c:959 config/tc-ppc.c:7486 config/tc-s390.c:2373 config/tc-v850.c:3499
|
||
#: config/tc-xstormy16.c:541
|
||
msgid "unresolved expression that must be resolved"
|
||
msgstr ""
|
||
@@ -2573,7 +2574,7 @@ msgid "sequence number in use for !tlsgd!%ld"
|
||
msgstr ""
|
||
|
||
#: config/tc-alpha.c:1991 config/tc-arc.c:2867 config/tc-mn10200.c:847
|
||
-#: config/tc-mn10300.c:1150 config/tc-ppc.c:2063 config/tc-s390.c:668
|
||
+#: config/tc-mn10300.c:1150 config/tc-ppc.c:2065 config/tc-s390.c:668
|
||
#: config/tc-tilegx.c:422 config/tc-tilegx.c:472 config/tc-tilepro.c:375
|
||
msgid "operand"
|
||
msgstr ""
|
||
@@ -2590,7 +2591,7 @@ msgstr ""
|
||
msgid "can not resolve expression"
|
||
msgstr ""
|
||
|
||
-#: config/tc-alpha.c:3511 config/tc-microblaze.c:204 config/tc-ppc.c:2405
|
||
+#: config/tc-alpha.c:3511 config/tc-microblaze.c:204 config/tc-ppc.c:2407
|
||
#, c-format
|
||
msgid ".COMMon length (%ld.) <0! Ignored."
|
||
msgstr ""
|
||
@@ -2810,8 +2811,8 @@ msgstr ""
|
||
#: config/tc-ia64.c:7462 config/tc-m68k.c:4558 config/tc-m68k.c:4570
|
||
#: config/tc-mips.c:3700 config/tc-mips.c:3733 config/tc-mips.c:3759
|
||
#: config/tc-nds32.c:3439 config/tc-nios2.c:3624 config/tc-nios2.c:3629
|
||
-#: config/tc-nios2.c:3635 config/tc-ns32k.c:1906 config/tc-ppc.c:1743
|
||
-#: config/tc-ppc.c:1783 config/tc-pru.c:1568 config/tc-pru.c:1572
|
||
+#: config/tc-nios2.c:3635 config/tc-ns32k.c:1906 config/tc-ppc.c:1745
|
||
+#: config/tc-ppc.c:1785 config/tc-pru.c:1568 config/tc-pru.c:1572
|
||
#: config/tc-s390.c:538 config/tc-s390.c:576 config/tc-sparc.c:961
|
||
#: config/tc-sparc.c:993 config/tc-tic30.c:121 config/tc-tic30.c:131
|
||
#: config/tc-tic30.c:141 config/tc-tic30.c:151 config/tc-tic4x.c:1219
|
||
@@ -5903,7 +5904,7 @@ msgstr ""
|
||
#. xgettext:c-format.
|
||
#: config/tc-avr.c:1865 config/tc-bfin.c:824 config/tc-d10v.c:1461
|
||
#: config/tc-d30v.c:1768 config/tc-metag.c:7016 config/tc-mn10200.c:772
|
||
-#: config/tc-mn10300.c:2177 config/tc-msp430.c:4643 config/tc-ppc.c:7763
|
||
+#: config/tc-mn10300.c:2177 config/tc-msp430.c:4643 config/tc-ppc.c:7765
|
||
#: config/tc-spu.c:877 config/tc-spu.c:1090 config/tc-v850.c:3364
|
||
#: config/tc-z80.c:3877
|
||
#, c-format
|
||
@@ -8601,8 +8602,8 @@ msgstr ""
|
||
#: config/tc-i386.c:7421
|
||
#, c-format
|
||
msgid ""
|
||
-"no instruction mnemonic suffix given and no register operands; can't size `%"
|
||
-"s'"
|
||
+"no instruction mnemonic suffix given and no register operands; can't size `"
|
||
+"%s'"
|
||
msgstr ""
|
||
|
||
#: config/tc-i386.c:7426
|
||
@@ -10677,8 +10678,8 @@ msgstr ""
|
||
msgid ".SCOMMon length (%ld.) <0! Ignored."
|
||
msgstr ""
|
||
|
||
-#: config/tc-m32r.c:1514 config/tc-microblaze.c:218 config/tc-ppc.c:2419
|
||
-#: config/tc-ppc.c:4356 config/tc-ppc.c:4411
|
||
+#: config/tc-m32r.c:1514 config/tc-microblaze.c:218 config/tc-ppc.c:2421
|
||
+#: config/tc-ppc.c:4358 config/tc-ppc.c:4413
|
||
msgid "ignoring bad alignment"
|
||
msgstr ""
|
||
|
||
@@ -11524,7 +11525,7 @@ msgid_plural "%s relocations do not fit in %u bytes"
|
||
msgstr[0] ""
|
||
msgstr[1] ""
|
||
|
||
-#: config/tc-m68k.c:7940 config/tc-ppc.c:2592
|
||
+#: config/tc-m68k.c:7940 config/tc-ppc.c:2594
|
||
msgid "unknown .gnu_attribute value"
|
||
msgstr ""
|
||
|
||
@@ -11561,11 +11562,10 @@ msgstr ""
|
||
msgid "operand must be a multiple of 2"
|
||
msgstr ""
|
||
|
||
-#: config/tc-mcore.c:888 config/tc-microblaze.c:948
|
||
-#: config/tc-microblaze.c:1084 config/tc-microblaze.c:1118
|
||
-#: config/tc-microblaze.c:1573 config/tc-microblaze.c:1641
|
||
-#: config/tc-microblaze.c:1716 config/tc-microblaze.c:2137
|
||
-#: config/tc-microblaze.c:2186
|
||
+#: config/tc-mcore.c:888 config/tc-microblaze.c:948 config/tc-microblaze.c:1084
|
||
+#: config/tc-microblaze.c:1118 config/tc-microblaze.c:1573
|
||
+#: config/tc-microblaze.c:1641 config/tc-microblaze.c:1716
|
||
+#: config/tc-microblaze.c:2137 config/tc-microblaze.c:2186
|
||
#, c-format
|
||
msgid "unknown opcode \"%s\""
|
||
msgstr ""
|
||
@@ -13591,7 +13591,7 @@ msgid "Unrecognized opcode: `%s'"
|
||
msgstr ""
|
||
|
||
#. xgettext:c-format.
|
||
-#: config/tc-mn10200.c:1132 config/tc-mn10300.c:1821 config/tc-ppc.c:4006
|
||
+#: config/tc-mn10200.c:1132 config/tc-mn10300.c:1821 config/tc-ppc.c:4008
|
||
#: config/tc-s390.c:1604 config/tc-v850.c:3040
|
||
#, c-format
|
||
msgid "junk at end of line: `%s'"
|
||
@@ -15050,7 +15050,7 @@ msgstr ""
|
||
msgid "pcrel too far"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:964 config/tc-ppc.c:972 config/tc-ppc.c:3493
|
||
+#: config/tc-ppc.c:964 config/tc-ppc.c:972 config/tc-ppc.c:3495
|
||
msgid "invalid register expression"
|
||
msgstr ""
|
||
|
||
@@ -15318,418 +15318,423 @@ msgstr ""
|
||
|
||
#: config/tc-ppc.c:1428
|
||
#, c-format
|
||
-msgid "-mregnames Allow symbolic names for registers\n"
|
||
+msgid "-mc2000 generate code for Hexin C2000 architecture\n"
|
||
msgstr ""
|
||
|
||
#: config/tc-ppc.c:1430
|
||
#, c-format
|
||
+msgid "-mregnames Allow symbolic names for registers\n"
|
||
+msgstr ""
|
||
+
|
||
+#: config/tc-ppc.c:1432
|
||
+#, c-format
|
||
msgid "-mno-regnames Do not allow symbolic names for registers\n"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1433
|
||
+#: config/tc-ppc.c:1435
|
||
#, c-format
|
||
msgid "-mrelocatable support for GCC's -mrelocatble option\n"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1435
|
||
+#: config/tc-ppc.c:1437
|
||
#, c-format
|
||
msgid "-mrelocatable-lib support for GCC's -mrelocatble-lib option\n"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1437
|
||
+#: config/tc-ppc.c:1439
|
||
#, c-format
|
||
msgid "-memb set PPC_EMB bit in ELF flags\n"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1439
|
||
+#: config/tc-ppc.c:1441
|
||
#, c-format
|
||
msgid ""
|
||
"-mlittle, -mlittle-endian, -le\n"
|
||
" generate code for a little endian machine\n"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1442
|
||
+#: config/tc-ppc.c:1444
|
||
#, c-format
|
||
msgid ""
|
||
"-mbig, -mbig-endian, -be\n"
|
||
" generate code for a big endian machine\n"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1445
|
||
+#: config/tc-ppc.c:1447
|
||
#, c-format
|
||
msgid "-msolaris generate code for Solaris\n"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1447
|
||
+#: config/tc-ppc.c:1449
|
||
#, c-format
|
||
msgid "-mno-solaris do not generate code for Solaris\n"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1449
|
||
+#: config/tc-ppc.c:1451
|
||
#, c-format
|
||
msgid "-K PIC set EF_PPC_RELOCATABLE_LIB in ELF flags\n"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1451
|
||
+#: config/tc-ppc.c:1453
|
||
#, c-format
|
||
msgid "-V print assembler version number\n"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1453
|
||
+#: config/tc-ppc.c:1455
|
||
#, c-format
|
||
msgid "-Qy, -Qn ignored\n"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1456
|
||
+#: config/tc-ppc.c:1458
|
||
#, c-format
|
||
msgid ""
|
||
"-nops=count when aligning, more than COUNT nops uses a branch\n"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1458
|
||
+#: config/tc-ppc.c:1460
|
||
#, c-format
|
||
msgid "-ppc476-workaround warn if emitting data to code sections\n"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1488
|
||
+#: config/tc-ppc.c:1490
|
||
#, c-format
|
||
msgid "unknown default cpu = %s, os = %s"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1516
|
||
+#: config/tc-ppc.c:1518
|
||
msgid "neither Power nor PowerPC opcodes were selected."
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1574
|
||
+#: config/tc-ppc.c:1576
|
||
#, c-format
|
||
msgid "mask trims opcode bits for %s"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1584
|
||
+#: config/tc-ppc.c:1586
|
||
#, c-format
|
||
msgid "operand index error for %s"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1610
|
||
+#: config/tc-ppc.c:1612
|
||
#, c-format
|
||
msgid "operand %d overlap in %s"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1619
|
||
+#: config/tc-ppc.c:1621
|
||
#, c-format
|
||
msgid "non-optional operand %d follows optional operand in %s"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1685
|
||
+#: config/tc-ppc.c:1687
|
||
#, c-format
|
||
msgid "powerpc_operands[%d].bitm invalid"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1692
|
||
+#: config/tc-ppc.c:1694
|
||
#, c-format
|
||
msgid "powerpc_operands[%d] duplicates powerpc_operands[%d]"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1720 config/tc-ppc.c:1773 config/tc-ppc.c:1815
|
||
-#: config/tc-ppc.c:1863
|
||
+#: config/tc-ppc.c:1722 config/tc-ppc.c:1775 config/tc-ppc.c:1817
|
||
+#: config/tc-ppc.c:1865
|
||
#, c-format
|
||
msgid "major opcode is not sorted for %s"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1726
|
||
+#: config/tc-ppc.c:1728
|
||
#, c-format
|
||
msgid "%s is enabled by vle flag"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1733
|
||
+#: config/tc-ppc.c:1735
|
||
#, c-format
|
||
msgid "%s not disabled by vle flag"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:1839
|
||
+#: config/tc-ppc.c:1841
|
||
#, c-format
|
||
msgid "opcode is not sorted for %s"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:2257
|
||
+#: config/tc-ppc.c:2259
|
||
#, c-format
|
||
msgid "symbol+offset@%s means symbol@%s+offset"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:2277
|
||
+#: config/tc-ppc.c:2279
|
||
#, c-format
|
||
msgid "symbol+offset@%s not supported"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:2356 config/tc-ppc.c:4224 config/tc-ppc.c:7686
|
||
+#: config/tc-ppc.c:2358 config/tc-ppc.c:4226 config/tc-ppc.c:7688
|
||
msgid "data in executable section"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:2397
|
||
+#: config/tc-ppc.c:2399
|
||
msgid "expected comma after symbol-name: rest of line ignored."
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:2430
|
||
+#: config/tc-ppc.c:2432
|
||
#, c-format
|
||
msgid "ignoring attempt to re-define symbol `%s'."
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:2438
|
||
+#: config/tc-ppc.c:2440
|
||
#, c-format
|
||
msgid "length of .lcomm \"%s\" is already %ld. Not changed to %ld."
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:2456
|
||
+#: config/tc-ppc.c:2458
|
||
msgid "common alignment not a power of 2"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:2498
|
||
+#: config/tc-ppc.c:2500
|
||
#, c-format
|
||
msgid "expected comma after name `%s' in .localentry directive"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:2508
|
||
+#: config/tc-ppc.c:2510
|
||
msgid "missing expression in .localentry directive"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:2529
|
||
+#: config/tc-ppc.c:2531
|
||
#, c-format
|
||
msgid ".localentry expression for `%s' is not a valid power of 2"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:2546
|
||
+#: config/tc-ppc.c:2548
|
||
#, c-format
|
||
msgid ".localentry expression for `%s' does not evaluate to a constant"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:2561
|
||
+#: config/tc-ppc.c:2563
|
||
msgid "missing expression in .abiversion directive"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:2570
|
||
+#: config/tc-ppc.c:2572
|
||
msgid ".abiversion expression does not evaluate to a constant"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:2650
|
||
+#: config/tc-ppc.c:2652
|
||
msgid "relocation cannot be done when using -mrelocatable"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:2696
|
||
+#: config/tc-ppc.c:2698
|
||
msgid "TOC section size exceeds 64k"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:3256
|
||
+#: config/tc-ppc.c:3258
|
||
#, c-format
|
||
msgid "%s howto doesn't match size/pcrel in gas"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:3335
|
||
+#: config/tc-ppc.c:3337
|
||
#, c-format
|
||
msgid "unrecognized opcode: `%s'"
|
||
msgstr ""
|
||
|
||
#. lmw, stmw, lswi, lswx, stswi, stswx
|
||
-#: config/tc-ppc.c:3346
|
||
+#: config/tc-ppc.c:3348
|
||
#, c-format
|
||
msgid "`%s' invalid when little-endian"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:3693
|
||
+#: config/tc-ppc.c:3695
|
||
#, c-format
|
||
msgid "@tls may not be used with \"%s\" operands"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:3696
|
||
+#: config/tc-ppc.c:3698
|
||
msgid "@tls may only be used in last operand"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:3734 config/tc-ppc.c:3744 config/tc-ppc.c:3754
|
||
-#: config/tc-ppc.c:3769
|
||
+#: config/tc-ppc.c:3736 config/tc-ppc.c:3746 config/tc-ppc.c:3756
|
||
+#: config/tc-ppc.c:3771
|
||
#, c-format
|
||
msgid "%s unsupported on this instruction"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:3816
|
||
+#: config/tc-ppc.c:3818
|
||
#, c-format
|
||
msgid "assuming %s on symbol"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:3939
|
||
+#: config/tc-ppc.c:3941
|
||
msgid "unsupported relocation for DS offset field"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:3992
|
||
+#: config/tc-ppc.c:3994
|
||
#, c-format
|
||
msgid "syntax error; found `%c', expected `%c'"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:3997
|
||
+#: config/tc-ppc.c:3999
|
||
#, c-format
|
||
msgid "syntax error; end of line, expected `%c'"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:4062 config/tc-ppc.c:6860
|
||
+#: config/tc-ppc.c:4064 config/tc-ppc.c:6862
|
||
#, c-format
|
||
msgid "instruction address is not a multiple of %d"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:4181
|
||
+#: config/tc-ppc.c:4183
|
||
msgid "bad .section directive: want a,e,v,w,x,M,S,G,T in string"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:4331
|
||
+#: config/tc-ppc.c:4333
|
||
msgid "missing size"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:4340
|
||
+#: config/tc-ppc.c:4342
|
||
msgid "negative size"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:4367
|
||
+#: config/tc-ppc.c:4369
|
||
msgid "Unknown visibility field in .comm"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:4385
|
||
+#: config/tc-ppc.c:4387
|
||
msgid "missing real symbol name"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:4424
|
||
+#: config/tc-ppc.c:4426
|
||
msgid "attempt to redefine symbol"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:4733
|
||
+#: config/tc-ppc.c:4735
|
||
#, c-format
|
||
msgid "no known dwarf XCOFF section for flag 0x%08x\n"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:4746
|
||
+#: config/tc-ppc.c:4748
|
||
#, c-format
|
||
msgid "label %s was not defined in this dwarf section"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:4860
|
||
+#: config/tc-ppc.c:4862
|
||
msgid "the XCOFF file format does not support arbitrary sections"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:4898
|
||
+#: config/tc-ppc.c:4900
|
||
msgid "Unknown visibility field in .extern"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:4935
|
||
+#: config/tc-ppc.c:4937
|
||
msgid "Unknown visibility field in .globl"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:4972
|
||
+#: config/tc-ppc.c:4974
|
||
msgid "Unknown visibility field in .weak"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:5023
|
||
+#: config/tc-ppc.c:5025
|
||
msgid ".ref outside .csect"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:5044 config/tc-ppc.c:5304
|
||
+#: config/tc-ppc.c:5046 config/tc-ppc.c:5306
|
||
msgid "missing symbol name"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:5074
|
||
+#: config/tc-ppc.c:5076
|
||
msgid "missing rename string"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:5104 config/tc-ppc.c:5706
|
||
+#: config/tc-ppc.c:5106 config/tc-ppc.c:5708
|
||
msgid "missing value"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:5122
|
||
+#: config/tc-ppc.c:5124
|
||
msgid "illegal .stabx expression; zero assumed"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:5154
|
||
+#: config/tc-ppc.c:5156
|
||
msgid "missing class"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:5163
|
||
+#: config/tc-ppc.c:5165
|
||
msgid "missing type"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:5190
|
||
+#: config/tc-ppc.c:5192
|
||
msgid ".stabx of storage class stsym must be within .bs/.es"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:5494
|
||
+#: config/tc-ppc.c:5496
|
||
msgid "nested .bs blocks"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:5525
|
||
+#: config/tc-ppc.c:5527
|
||
msgid ".es without preceding .bs"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:5698
|
||
+#: config/tc-ppc.c:5700
|
||
msgid "non-constant byte count"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:5773
|
||
+#: config/tc-ppc.c:5775
|
||
msgid ".tc not in .toc section"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:5791
|
||
+#: config/tc-ppc.c:5793
|
||
msgid ".tc with no label"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:5819
|
||
+#: config/tc-ppc.c:5821
|
||
#, c-format
|
||
msgid ".tc with storage class %d not yet supported"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:5888 config/tc-s390.c:1964
|
||
+#: config/tc-ppc.c:5890 config/tc-s390.c:1964
|
||
msgid ".machine stack overflow"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:5895 config/tc-s390.c:1975
|
||
+#: config/tc-ppc.c:5897 config/tc-s390.c:1975
|
||
msgid ".machine stack underflow"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:5937 config/tc-s390.c:1987
|
||
+#: config/tc-ppc.c:5939 config/tc-s390.c:1987
|
||
#, c-format
|
||
msgid "invalid machine `%s'"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:5981
|
||
+#: config/tc-ppc.c:5983
|
||
msgid "bad symbol suffix"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:6080
|
||
+#: config/tc-ppc.c:6082
|
||
msgid "unrecognized symbol suffix"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:6168
|
||
+#: config/tc-ppc.c:6170
|
||
msgid ".ef with no preceding .function"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:6304
|
||
+#: config/tc-ppc.c:6306
|
||
#, c-format
|
||
msgid "warning: symbol %s has no csect"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:6636
|
||
+#: config/tc-ppc.c:6638
|
||
msgid "symbol in .toc does not match any .tc"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:7388
|
||
+#: config/tc-ppc.c:7390
|
||
#, c-format
|
||
msgid "%s unsupported as instruction fixup"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:7487
|
||
+#: config/tc-ppc.c:7489
|
||
#, c-format
|
||
msgid "unsupported relocation against %s"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:7649
|
||
+#: config/tc-ppc.c:7651
|
||
#, c-format
|
||
msgid "R_TLSML relocation doesn't target a TOC entry named \"_$TLSML\": %s"
|
||
msgstr ""
|
||
|
||
-#: config/tc-ppc.c:7669
|
||
+#: config/tc-ppc.c:7671
|
||
#, c-format
|
||
msgid "Gas failure, reloc value %d\n"
|
||
msgstr ""
|
||
diff --git a/include/opcode/ppc.h b/include/opcode/ppc.h
|
||
index aea7d6c2..f599a8a1 100644
|
||
--- a/include/opcode/ppc.h
|
||
+++ b/include/opcode/ppc.h
|
||
@@ -245,6 +245,13 @@ extern const unsigned int spe2_num_opcodes;
|
||
/* Opcode is only supported by 'future' architecture. */
|
||
#define PPC_OPCODE_FUTURE 0x1000000000000ull
|
||
|
||
+/* Opcode is supported by Hardware Transactional Memory */
|
||
+#define PPC_OPCODE_HTM 0x2000000000000ull
|
||
+
|
||
+/* Opcode is supported by C2000 */
|
||
+#define PPC_OPCODE_C2000 0x4000000000000ull
|
||
+
|
||
+
|
||
/* A macro to extract the major opcode from an instruction. */
|
||
#define PPC_OP(i) (((i) >> 26) & 0x3f)
|
||
|
||
diff --git a/opcodes/ppc-dis.c b/opcodes/ppc-dis.c
|
||
index d97137d8..055dc8f5 100644
|
||
--- a/opcodes/ppc-dis.c
|
||
+++ b/opcodes/ppc-dis.c
|
||
@@ -196,29 +196,34 @@ struct ppc_mopt ppc_opts[] = {
|
||
{ "power8", (PPC_OPCODE_PPC | PPC_OPCODE_ISEL | PPC_OPCODE_64
|
||
| PPC_OPCODE_POWER4 | PPC_OPCODE_POWER5 | PPC_OPCODE_POWER6
|
||
| PPC_OPCODE_POWER7 | PPC_OPCODE_POWER8
|
||
- | PPC_OPCODE_ALTIVEC | PPC_OPCODE_VSX),
|
||
+ | PPC_OPCODE_ALTIVEC | PPC_OPCODE_VSX | PPC_OPCODE_HTM),
|
||
0 },
|
||
{ "power9", (PPC_OPCODE_PPC | PPC_OPCODE_ISEL | PPC_OPCODE_64
|
||
| PPC_OPCODE_POWER4 | PPC_OPCODE_POWER5 | PPC_OPCODE_POWER6
|
||
| PPC_OPCODE_POWER7 | PPC_OPCODE_POWER8 | PPC_OPCODE_POWER9
|
||
- | PPC_OPCODE_ALTIVEC | PPC_OPCODE_VSX),
|
||
+ | PPC_OPCODE_ALTIVEC | PPC_OPCODE_VSX | PPC_OPCODE_HTM),
|
||
0 },
|
||
{ "power10", (PPC_OPCODE_PPC | PPC_OPCODE_ISEL | PPC_OPCODE_64
|
||
| PPC_OPCODE_POWER4 | PPC_OPCODE_POWER5 | PPC_OPCODE_POWER6
|
||
| PPC_OPCODE_POWER7 | PPC_OPCODE_POWER8 | PPC_OPCODE_POWER9
|
||
- | PPC_OPCODE_POWER10 | PPC_OPCODE_ALTIVEC | PPC_OPCODE_VSX),
|
||
+ | PPC_OPCODE_POWER10 | PPC_OPCODE_ALTIVEC | PPC_OPCODE_VSX | PPC_OPCODE_HTM),
|
||
0 },
|
||
{ "libresoc",(PPC_OPCODE_PPC | PPC_OPCODE_ISEL | PPC_OPCODE_64
|
||
| PPC_OPCODE_POWER4 | PPC_OPCODE_POWER5 | PPC_OPCODE_POWER6
|
||
| PPC_OPCODE_POWER7 | PPC_OPCODE_POWER8 | PPC_OPCODE_POWER9
|
||
- | PPC_OPCODE_ALTIVEC | PPC_OPCODE_VSX | PPC_OPCODE_SVP64),
|
||
+ | PPC_OPCODE_ALTIVEC | PPC_OPCODE_VSX | PPC_OPCODE_SVP64 | PPC_OPCODE_HTM),
|
||
0 },
|
||
{ "future", (PPC_OPCODE_PPC | PPC_OPCODE_ISEL | PPC_OPCODE_64
|
||
| PPC_OPCODE_POWER4 | PPC_OPCODE_POWER5 | PPC_OPCODE_POWER6
|
||
| PPC_OPCODE_POWER7 | PPC_OPCODE_POWER8 | PPC_OPCODE_POWER9
|
||
- | PPC_OPCODE_POWER10 | PPC_OPCODE_ALTIVEC | PPC_OPCODE_VSX
|
||
+ | PPC_OPCODE_POWER10 | PPC_OPCODE_ALTIVEC | PPC_OPCODE_VSX | PPC_OPCODE_HTM
|
||
| PPC_OPCODE_FUTURE),
|
||
0 },
|
||
+ { "c2000", (PPC_OPCODE_PPC | PPC_OPCODE_ISEL | PPC_OPCODE_64
|
||
+ | PPC_OPCODE_POWER4 | PPC_OPCODE_POWER5 | PPC_OPCODE_POWER6
|
||
+ | PPC_OPCODE_POWER7 | PPC_OPCODE_POWER8 | PPC_OPCODE_C2000
|
||
+ | PPC_OPCODE_ALTIVEC | PPC_OPCODE_VSX),
|
||
+ 0 },
|
||
{ "ppc", PPC_OPCODE_PPC,
|
||
0 },
|
||
{ "ppc32", PPC_OPCODE_PPC,
|
||
@@ -255,17 +260,17 @@ struct ppc_mopt ppc_opts[] = {
|
||
{ "pwr8", (PPC_OPCODE_PPC | PPC_OPCODE_ISEL | PPC_OPCODE_64
|
||
| PPC_OPCODE_POWER4 | PPC_OPCODE_POWER5 | PPC_OPCODE_POWER6
|
||
| PPC_OPCODE_POWER7 | PPC_OPCODE_POWER8
|
||
- | PPC_OPCODE_ALTIVEC | PPC_OPCODE_VSX),
|
||
+ | PPC_OPCODE_ALTIVEC | PPC_OPCODE_VSX | PPC_OPCODE_HTM),
|
||
0 },
|
||
{ "pwr9", (PPC_OPCODE_PPC | PPC_OPCODE_ISEL | PPC_OPCODE_64
|
||
| PPC_OPCODE_POWER4 | PPC_OPCODE_POWER5 | PPC_OPCODE_POWER6
|
||
| PPC_OPCODE_POWER7 | PPC_OPCODE_POWER8 | PPC_OPCODE_POWER9
|
||
- | PPC_OPCODE_ALTIVEC | PPC_OPCODE_VSX),
|
||
+ | PPC_OPCODE_ALTIVEC | PPC_OPCODE_VSX | PPC_OPCODE_HTM),
|
||
0 },
|
||
{ "pwr10", (PPC_OPCODE_PPC | PPC_OPCODE_ISEL | PPC_OPCODE_64
|
||
| PPC_OPCODE_POWER4 | PPC_OPCODE_POWER5 | PPC_OPCODE_POWER6
|
||
| PPC_OPCODE_POWER7 | PPC_OPCODE_POWER8 | PPC_OPCODE_POWER9
|
||
- | PPC_OPCODE_POWER10 | PPC_OPCODE_ALTIVEC | PPC_OPCODE_VSX),
|
||
+ | PPC_OPCODE_POWER10 | PPC_OPCODE_ALTIVEC | PPC_OPCODE_VSX | PPC_OPCODE_HTM),
|
||
0 },
|
||
{ "pwrx", PPC_OPCODE_POWER | PPC_OPCODE_POWER2,
|
||
0 },
|
||
diff --git a/opcodes/ppc-opc.c b/opcodes/ppc-opc.c
|
||
index 37f1aeb7..ac92a8f1 100644
|
||
--- a/opcodes/ppc-opc.c
|
||
+++ b/opcodes/ppc-opc.c
|
||
@@ -5007,7 +5007,7 @@ const unsigned int num_powerpc_operands = ARRAY_SIZE (powerpc_operands);
|
||
#define E500 PPC_OPCODE_E500
|
||
#define E6500 PPC_OPCODE_E6500
|
||
#define PPCVLE PPC_OPCODE_VLE
|
||
-#define PPCHTM PPC_OPCODE_POWER8
|
||
+#define PPCHTM PPC_OPCODE_HTM
|
||
#define E200Z4 PPC_OPCODE_E200Z4
|
||
#define PPCLSP PPC_OPCODE_LSP
|
||
#define SVP64 PPC_OPCODE_SVP64
|
||
--
|
||
2.34.1
|
||
|