diff options
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 6 | ||||
-rw-r--r-- | gas/config/tc-ppc.c | 89 | ||||
-rw-r--r-- | gas/doc/c-ppc.texi | 5 | ||||
-rw-r--r-- | gas/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gas/testsuite/gas/ppc/ppc.exp | 1 | ||||
-rw-r--r-- | gas/testsuite/gas/ppc/titan.d | 267 | ||||
-rw-r--r-- | gas/testsuite/gas/ppc/titan.s | 261 |
7 files changed, 590 insertions, 44 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index dded370..0656925 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,9 @@ +2010-02-08 Philipp Tomsich <philipp.tomsich@theobroma-systems.com> + + * config/tc-ppc.c (md_show_usage): Mention -mtitan. Don't use tabs. + (ppc_mach): Handle titan. + * doc/c-ppc.texi: Mention -mtitan. + 2010-02-05 Joseph Myers <joseph@codesourcery.com> * Makefile.am (CPU_TYPES, OBJ_FORMATS, CPU_OBJ_VALID, diff --git a/gas/config/tc-ppc.c b/gas/config/tc-ppc.c index 212f822..3f366fe 100644 --- a/gas/config/tc-ppc.c +++ b/gas/config/tc-ppc.c @@ -1178,57 +1178,58 @@ md_show_usage (FILE *stream) { fprintf (stream, _("\ PowerPC options:\n\ --a32 generate ELF32/XCOFF32\n\ --a64 generate ELF64/XCOFF64\n\ --u ignored\n\ --mpwrx, -mpwr2 generate code for POWER/2 (RIOS2)\n\ --mpwr generate code for POWER (RIOS1)\n\ --m601 generate code for PowerPC 601\n\ +-a32 generate ELF32/XCOFF32\n\ +-a64 generate ELF64/XCOFF64\n\ +-u ignored\n\ +-mpwrx, -mpwr2 generate code for POWER/2 (RIOS2)\n\ +-mpwr generate code for POWER (RIOS1)\n\ +-m601 generate code for PowerPC 601\n\ -mppc, -mppc32, -m603, -m604\n\ - generate code for PowerPC 603/604\n\ --m403 generate code for PowerPC 403\n\ --m405 generate code for PowerPC 405\n\ --m440 generate code for PowerPC 440\n\ --m464 generate code for PowerPC 464\n\ --m476 generate code for PowerPC 476\n\ + generate code for PowerPC 603/604\n\ +-m403 generate code for PowerPC 403\n\ +-m405 generate code for PowerPC 405\n\ +-m440 generate code for PowerPC 440\n\ +-m464 generate code for PowerPC 464\n\ +-m476 generate code for PowerPC 476\n\ -m7400, -m7410, -m7450, -m7455\n\ - generate code for PowerPC 7400/7410/7450/7455\n\ --m750cl generate code for PowerPC 750cl\n")); + generate code for PowerPC 7400/7410/7450/7455\n\ +-m750cl generate code for PowerPC 750cl\n")); fprintf (stream, _("\ --mppc64, -m620 generate code for PowerPC 620/625/630\n\ --mppc64bridge generate code for PowerPC 64, including bridge insns\n\ --mbooke generate code for 32-bit PowerPC BookE\n\ --ma2 generate code for A2 architecture\n\ --mpower4 generate code for Power4 architecture\n\ --mpower5 generate code for Power5 architecture\n\ --mpower6 generate code for Power6 architecture\n\ --mpower7 generate code for Power7 architecture\n\ --mcell generate code for Cell Broadband Engine architecture\n\ --mcom generate code Power/PowerPC common instructions\n\ --many generate code for any architecture (PWR/PWRX/PPC)\n")); +-mppc64, -m620 generate code for PowerPC 620/625/630\n\ +-mppc64bridge generate code for PowerPC 64, including bridge insns\n\ +-mbooke generate code for 32-bit PowerPC BookE\n\ +-ma2 generate code for A2 architecture\n\ +-mpower4 generate code for Power4 architecture\n\ +-mpower5 generate code for Power5 architecture\n\ +-mpower6 generate code for Power6 architecture\n\ +-mpower7 generate code for Power7 architecture\n\ +-mcell generate code for Cell Broadband Engine architecture\n\ +-mcom generate code Power/PowerPC common instructions\n\ +-many generate code for any architecture (PWR/PWRX/PPC)\n")); fprintf (stream, _("\ --maltivec generate code for AltiVec\n\ --mvsx generate code for Vector-Scalar (VSX) instructions\n\ --me300 generate code for PowerPC e300 family\n\ --me500, -me500x2 generate code for Motorola e500 core complex\n\ --me500mc, generate code for Freescale e500mc core complex\n\ --me500mc64, generate code for Freescale e500mc64 core complex\n\ --mspe generate code for Motorola SPE instructions\n\ --mregnames Allow symbolic names for registers\n\ --mno-regnames Do not allow symbolic names for registers\n")); +-maltivec generate code for AltiVec\n\ +-mvsx generate code for Vector-Scalar (VSX) instructions\n\ +-me300 generate code for PowerPC e300 family\n\ +-me500, -me500x2 generate code for Motorola e500 core complex\n\ +-me500mc, generate code for Freescale e500mc core complex\n\ +-me500mc64, generate code for Freescale e500mc64 core complex\n\ +-mspe generate code for Motorola SPE instructions\n\ +-mtitan generate code for AppliedMicro Titan core complex\n\ +-mregnames Allow symbolic names for registers\n\ +-mno-regnames Do not allow symbolic names for registers\n")); #ifdef OBJ_ELF fprintf (stream, _("\ --mrelocatable support for GCC's -mrelocatble option\n\ --mrelocatable-lib support for GCC's -mrelocatble-lib option\n\ --memb set PPC_EMB bit in ELF flags\n\ +-mrelocatable support for GCC's -mrelocatble option\n\ +-mrelocatable-lib support for GCC's -mrelocatble-lib option\n\ +-memb set PPC_EMB bit in ELF flags\n\ -mlittle, -mlittle-endian, -l, -le\n\ - generate code for a little endian machine\n\ + generate code for a little endian machine\n\ -mbig, -mbig-endian, -b, -be\n\ - generate code for a big endian machine\n\ --msolaris generate code for Solaris\n\ --mno-solaris do not generate code for Solaris\n\ --V print assembler version number\n\ --Qy, -Qn ignored\n")); + generate code for a big endian machine\n\ +-msolaris generate code for Solaris\n\ +-mno-solaris do not generate code for Solaris\n\ +-V print assembler version number\n\ +-Qy, -Qn ignored\n")); #endif } @@ -1291,6 +1292,8 @@ ppc_mach (void) return bfd_mach_ppc64; else if (ppc_arch () == bfd_arch_rs6000) return bfd_mach_rs6k; + else if (ppc_cpu & PPC_OPCODE_TITAN) + return bfd_mach_ppc_titan; else return bfd_mach_ppc; } diff --git a/gas/doc/c-ppc.texi b/gas/doc/c-ppc.texi index cab461b..1436604 100644 --- a/gas/doc/c-ppc.texi +++ b/gas/doc/c-ppc.texi @@ -1,4 +1,4 @@ -@c Copyright 2001, 2002, 2003, 2005, 2006, 2007, 2008 +@c Copyright 2001, 2002, 2003, 2005, 2006, 2007, 2008, 2009, 2010 @c Free Software Foundation, Inc. @c This is part of the GAS manual. @c For copying conditions, see the file as.texinfo. @@ -70,6 +70,9 @@ Generate code for Motorola e500 core complex. @item -mspe Generate code for Motorola SPE instructions. +@item -mtitan +Generate code for AppliedMicro Titan core complex. + @item -mppc64bridge Generate code for PowerPC 64, including bridge insns. diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 080ca73..43a7813 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2010-02-08 Philipp Tomsich <philipp.tomsich@theobroma-systems.com> + + * gas/ppc/titan.d, * gas/ppc/titan.s: New test. + * gas/ppc/ppc.exp: Run it. + 2010-02-03 Quentin Neill <quentin.neill@amd.com> * gas/i386/i386.exp: Rename amdfam15 test cases to bdver1. diff --git a/gas/testsuite/gas/ppc/ppc.exp b/gas/testsuite/gas/ppc/ppc.exp index 0c8d852..3db0ade 100644 --- a/gas/testsuite/gas/ppc/ppc.exp +++ b/gas/testsuite/gas/ppc/ppc.exp @@ -50,5 +50,6 @@ if { [istarget powerpc*-*-*] } then { run_dump_test "power7" run_dump_test "vsx" run_dump_test "476" + run_dump_test "titan" } } diff --git a/gas/testsuite/gas/ppc/titan.d b/gas/testsuite/gas/ppc/titan.d new file mode 100644 index 0000000..2b59928 --- /dev/null +++ b/gas/testsuite/gas/ppc/titan.d @@ -0,0 +1,267 @@ +#as: -mtitan +#objdump: -dr -Mtitan +#name: AppliedMicro Titan tests + +.*: +file format elf(32)?(64)?-powerpc.* + +Disassembly of section \.text: + +0+0000000 <start>: + 0: 4e 80 00 20 blr + 4: 0c 81 00 00 tweqi r1,0 + 8: 10 41 01 58 macchw r2,r1,r0 + c: 10 41 01 59 macchw\. r2,r1,r0 + 10: 10 41 05 58 macchwo r2,r1,r0 + 14: 10 41 05 59 macchwo\. r2,r1,r0 + 18: 10 41 01 d8 macchws r2,r1,r0 + 1c: 10 41 01 d9 macchws\. r2,r1,r0 + 20: 10 41 05 d8 macchwso r2,r1,r0 + 24: 10 41 05 d9 macchwso\. r2,r1,r0 + 28: 10 41 01 98 macchwsu r2,r1,r0 + 2c: 10 41 01 99 macchwsu\. r2,r1,r0 + 30: 10 41 05 98 macchwsuo r2,r1,r0 + 34: 10 41 05 99 macchwsuo\. r2,r1,r0 + 38: 10 41 01 18 macchwu r2,r1,r0 + 3c: 10 41 01 19 macchwu\. r2,r1,r0 + 40: 10 41 05 18 macchwuo r2,r1,r0 + 44: 10 41 05 19 macchwuo\. r2,r1,r0 + 48: 10 41 00 58 machhw r2,r1,r0 + 4c: 10 41 00 59 machhw\. r2,r1,r0 + 50: 10 41 04 58 machhwo r2,r1,r0 + 54: 10 41 04 59 machhwo\. r2,r1,r0 + 58: 10 41 00 d8 machhws r2,r1,r0 + 5c: 10 41 00 d9 machhws\. r2,r1,r0 + 60: 10 41 04 d8 machhwso r2,r1,r0 + 64: 10 41 04 d9 machhwso\. r2,r1,r0 + 68: 10 41 00 98 machhwsu r2,r1,r0 + 6c: 10 41 00 99 machhwsu\. r2,r1,r0 + 70: 10 41 04 98 machhwsuo r2,r1,r0 + 74: 10 41 04 99 machhwsuo\. r2,r1,r0 + 78: 10 41 00 18 machhwu r2,r1,r0 + 7c: 10 41 00 19 machhwu\. r2,r1,r0 + 80: 10 41 04 18 machhwuo r2,r1,r0 + 84: 10 41 04 19 machhwuo\. r2,r1,r0 + 88: 10 41 03 58 maclhw r2,r1,r0 + 8c: 10 41 03 59 maclhw\. r2,r1,r0 + 90: 10 41 07 58 maclhwo r2,r1,r0 + 94: 10 41 07 59 maclhwo\. r2,r1,r0 + 98: 10 41 03 d8 maclhws r2,r1,r0 + 9c: 10 41 03 d9 maclhws\. r2,r1,r0 + a0: 10 41 07 d8 maclhwso r2,r1,r0 + a4: 10 41 07 d9 maclhwso\. r2,r1,r0 + a8: 10 41 03 98 maclhwsu r2,r1,r0 + ac: 10 41 03 99 maclhwsu\. r2,r1,r0 + b0: 10 41 07 98 maclhwsuo r2,r1,r0 + b4: 10 41 07 99 maclhwsuo\. r2,r1,r0 + b8: 10 41 03 18 maclhwu r2,r1,r0 + bc: 10 41 03 19 maclhwu\. r2,r1,r0 + c0: 10 41 07 18 maclhwuo r2,r1,r0 + c4: 10 41 07 19 maclhwuo\. r2,r1,r0 + c8: 10 41 01 5c nmacchw r2,r1,r0 + cc: 10 41 01 5d nmacchw\. r2,r1,r0 + d0: 10 41 05 5c nmacchwo r2,r1,r0 + d4: 10 41 05 5d nmacchwo\. r2,r1,r0 + d8: 10 41 01 dc nmacchws r2,r1,r0 + dc: 10 41 01 dd nmacchws\. r2,r1,r0 + e0: 10 41 05 dc nmacchwso r2,r1,r0 + e4: 10 41 05 dd nmacchwso\. r2,r1,r0 + e8: 10 41 00 5c nmachhw r2,r1,r0 + ec: 10 41 00 5d nmachhw\. r2,r1,r0 + f0: 10 41 04 5c nmachhwo r2,r1,r0 + f4: 10 41 04 5d nmachhwo\. r2,r1,r0 + f8: 10 41 00 dc nmachhws r2,r1,r0 + fc: 10 41 00 dd nmachhws\. r2,r1,r0 + 100: 10 41 04 dc nmachhwso r2,r1,r0 + 104: 10 41 04 dd nmachhwso\. r2,r1,r0 + 108: 10 41 03 5c nmaclhw r2,r1,r0 + 10c: 10 41 03 5d nmaclhw\. r2,r1,r0 + 110: 10 41 07 5c nmaclhwo r2,r1,r0 + 114: 10 41 07 5d nmaclhwo\. r2,r1,r0 + 118: 10 41 03 dc nmaclhws r2,r1,r0 + 11c: 10 41 03 dd nmaclhws\. r2,r1,r0 + 120: 10 41 07 dc nmaclhwso r2,r1,r0 + 124: 10 41 07 dd nmaclhwso\. r2,r1,r0 + 128: 10 41 01 50 mulchw r2,r1,r0 + 12c: 10 41 01 51 mulchw\. r2,r1,r0 + 130: 10 41 01 10 mulchwu r2,r1,r0 + 134: 10 41 01 11 mulchwu\. r2,r1,r0 + 138: 10 41 00 50 mulhhw r2,r1,r0 + 13c: 10 41 00 51 mulhhw\. r2,r1,r0 + 140: 10 41 00 10 mulhhwu r2,r1,r0 + 144: 10 41 00 11 mulhhwu\. r2,r1,r0 + 148: 10 41 03 50 mullhw r2,r1,r0 + 14c: 10 41 03 51 mullhw\. r2,r1,r0 + 150: 10 41 03 10 mullhwu r2,r1,r0 + 154: 10 41 03 11 mullhwu\. r2,r1,r0 + 158: 7c 22 00 9c dlmzb r2,r1,r0 + 15c: 7c 22 00 9d dlmzb\. r2,r1,r0 + 160: 7c 02 0b 8c dccci r2,r1 + 164: 7c 02 0f 8c iccci r2,r1 + 168: 7c 02 0b 0c dcblc r2,r1 + 16c: 7c 02 0b 0c dcblc r2,r1 + 170: 7c 22 0b 0c dcblc 1,r2,r1 + 174: 7c 02 09 4c dcbtls r2,r1 + 178: 7c 02 09 4c dcbtls r2,r1 + 17c: 7c 22 09 4c dcbtls 1,r2,r1 + 180: 7c 02 09 0c dcbtstls r2,r1 + 184: 7c 02 09 0c dcbtstls r2,r1 + 188: 7c 22 09 0c dcbtstls 1,r2,r1 + 18c: 7c 02 09 cc icblc r2,r1 + 190: 7c 02 09 cc icblc r2,r1 + 194: 7c 22 09 cc icblc 1,r2,r1 + 198: 7c 02 0b cc icbtls r2,r1 + 19c: 7c 02 0b cc icbtls r2,r1 + 1a0: 7c 22 0b cc icbtls 1,r2,r1 + 1a4: 7c 41 02 8c dcread r2,r1,r0 + 1a8: 7c 02 0f cc icread r2,r1 + 1ac: 7c 41 02 9c mfpmr r2,1 + 1b0: 7c 22 02 9c mfpmr r1,2 + 1b4: 7c 81 02 a6 mfxer r4 + 1b8: 7c 81 02 a6 mfxer r4 + 1bc: 7c 88 02 a6 mflr r4 + 1c0: 7c 88 02 a6 mflr r4 + 1c4: 7c 89 02 a6 mfctr r4 + 1c8: 7c 89 02 a6 mfctr r4 + 1cc: 7c 96 02 a6 mfdec r4 + 1d0: 7c 96 02 a6 mfdec r4 + 1d4: 7c 9a 02 a6 mfsrr0 r4 + 1d8: 7c 9a 02 a6 mfsrr0 r4 + 1dc: 7c 9b 02 a6 mfsrr1 r4 + 1e0: 7c 9b 02 a6 mfsrr1 r4 + 1e4: 7c 90 0a a6 mfpid r4 + 1e8: 7c 90 0a a6 mfpid r4 + 1ec: 7c 9a 0a a6 mfcsrr0 r4 + 1f0: 7c 9a 0a a6 mfcsrr0 r4 + 1f4: 7c 9b 0a a6 mfcsrr1 r4 + 1f8: 7c 9b 0a a6 mfcsrr1 r4 + 1fc: 7c 9d 0a a6 mfdear r4 + 200: 7c 9d 0a a6 mfdear r4 + 204: 7c 9e 0a a6 mfesr r4 + 208: 7c 9e 0a a6 mfesr r4 + 20c: 7c 9f 0a a6 mfivpr r4 + 210: 7c 9f 0a a6 mfivpr r4 + 214: 7c 80 42 a6 mfusprg0 r4 + 218: 7c 80 42 a6 mfusprg0 r4 + 21c: 7c 84 42 a6 mfsprg r4,4 + 220: 7c 84 42 a6 mfsprg r4,4 + 224: 7c 85 42 a6 mfsprg r4,5 + 228: 7c 85 42 a6 mfsprg r4,5 + 22c: 7c 86 42 a6 mfsprg r4,6 + 230: 7c 86 42 a6 mfsprg r4,6 + 234: 7c 87 42 a6 mfsprg r4,7 + 238: 7c 87 42 a6 mfsprg r4,7 + 23c: 7c 8c 42 a6 mftb r4 + 240: 7c 8c 42 a6 mftb r4 + 244: 7c 8c 42 a6 mftb r4 + 248: 7c 8d 42 a6 mftbu r4 + 24c: 7c 8d 42 a6 mftbu r4 + 250: 7c 90 42 a6 mfsprg r4,0 + 254: 7c 90 42 a6 mfsprg r4,0 + 258: 7c 91 42 a6 mfsprg r4,1 + 25c: 7c 91 42 a6 mfsprg r4,1 + 260: 7c 92 42 a6 mfsprg r4,2 + 264: 7c 92 42 a6 mfsprg r4,2 + 268: 7c 93 42 a6 mfsprg r4,3 + 26c: 7c 93 42 a6 mfsprg r4,3 + 270: 7c 9e 42 a6 mfpir r4 + 274: 7c 9e 42 a6 mfpir r4 + 278: 7c 9f 42 a6 mfpvr r4 + 27c: 7c 9f 42 a6 mfpvr r4 + 280: 7c 90 4a a6 mfdbsr r4 + 284: 7c 90 4a a6 mfdbsr r4 + 288: 7c 94 4a a6 mfdbcr0 r4 + 28c: 7c 94 4a a6 mfdbcr0 r4 + 290: 7c 95 4a a6 mfdbcr1 r4 + 294: 7c 95 4a a6 mfdbcr1 r4 + 298: 7c 96 4a a6 mfdbcr2 r4 + 29c: 7c 96 4a a6 mfdbcr2 r4 + 2a0: 7c 98 4a a6 mfiac1 r4 + 2a4: 7c 98 4a a6 mfiac1 r4 + 2a8: 7c 99 4a a6 mfiac2 r4 + 2ac: 7c 99 4a a6 mfiac2 r4 + 2b0: 7c 9a 4a a6 mfiac3 r4 + 2b4: 7c 9a 4a a6 mfiac3 r4 + 2b8: 7c 9b 4a a6 mfiac4 r4 + 2bc: 7c 9b 4a a6 mfiac4 r4 + 2c0: 7c 9c 4a a6 mfdac1 r4 + 2c4: 7c 9c 4a a6 mfdac1 r4 + 2c8: 7c 9d 4a a6 mfdac2 r4 + 2cc: 7c 9d 4a a6 mfdac2 r4 + 2d0: 7c 9e 4a a6 mfdvc1 r4 + 2d4: 7c 9e 4a a6 mfdvc1 r4 + 2d8: 7c 9f 4a a6 mfdvc2 r4 + 2dc: 7c 9f 4a a6 mfdvc2 r4 + 2e0: 7c 90 52 a6 mftsr r4 + 2e4: 7c 90 52 a6 mftsr r4 + 2e8: 7c 94 52 a6 mftcr r4 + 2ec: 7c 94 52 a6 mftcr r4 + 2f0: 7c 90 62 a6 mfivor0 r4 + 2f4: 7c 90 62 a6 mfivor0 r4 + 2f8: 7c 91 62 a6 mfivor1 r4 + 2fc: 7c 91 62 a6 mfivor1 r4 + 300: 7c 92 62 a6 mfivor2 r4 + 304: 7c 92 62 a6 mfivor2 r4 + 308: 7c 93 62 a6 mfivor3 r4 + 30c: 7c 93 62 a6 mfivor3 r4 + 310: 7c 94 62 a6 mfivor4 r4 + 314: 7c 94 62 a6 mfivor4 r4 + 318: 7c 95 62 a6 mfivor5 r4 + 31c: 7c 95 62 a6 mfivor5 r4 + 320: 7c 96 62 a6 mfivor6 r4 + 324: 7c 96 62 a6 mfivor6 r4 + 328: 7c 97 62 a6 mfivor7 r4 + 32c: 7c 97 62 a6 mfivor7 r4 + 330: 7c 98 62 a6 mfivor8 r4 + 334: 7c 98 62 a6 mfivor8 r4 + 338: 7c 99 62 a6 mfivor9 r4 + 33c: 7c 99 62 a6 mfivor9 r4 + 340: 7c 9a 62 a6 mfivor10 r4 + 344: 7c 9a 62 a6 mfivor10 r4 + 348: 7c 9b 62 a6 mfivor11 r4 + 34c: 7c 9b 62 a6 mfivor11 r4 + 350: 7c 9c 62 a6 mfivor12 r4 + 354: 7c 9c 62 a6 mfivor12 r4 + 358: 7c 9d 62 a6 mfivor13 r4 + 35c: 7c 9d 62 a6 mfivor13 r4 + 360: 7c 9e 62 a6 mfivor14 r4 + 364: 7c 9e 62 a6 mfivor14 r4 + 368: 7c 9f 62 a6 mfivor15 r4 + 36c: 7c 9f 62 a6 mfivor15 r4 + 370: 7c 93 82 a6 mfivor35 r4 + 374: 7c 93 82 a6 mfivor35 r4 + 378: 7c 9a 8a a6 mfdc_dat r4 + 37c: 7c 9a 8a a6 mfdc_dat r4 + 380: 7c 9b 8a a6 mfmcsrr1 r4 + 384: 7c 9b 8a a6 mfmcsrr1 r4 + 388: 7c 9c 8a a6 mfmcsr r4 + 38c: 7c 9c 8a a6 mfmcsr r4 + 390: 7c 90 da a6 mfivndx r4 + 394: 7c 90 da a6 mfivndx r4 + 398: 7c 91 da a6 mfdvndx r4 + 39c: 7c 91 da a6 mfdvndx r4 + 3a0: 7c 92 da a6 mfivlim r4 + 3a4: 7c 92 da a6 mfivlim r4 + 3a8: 7c 93 da a6 mfdvlim r4 + 3ac: 7c 93 da a6 mfdvlim r4 + 3b0: 7c 94 da a6 mfclcsr r4 + 3b4: 7c 94 da a6 mfclcsr r4 + 3b8: 7c 98 da a6 mfccr1 r4 + 3bc: 7c 98 da a6 mfccr1 r4 + 3c0: 7c 9b e2 a6 mfrstcfg r4 + 3c4: 7c 9b e2 a6 mfrstcfg r4 + 3c8: 7c 9c e2 a6 mfdcdbtrl r4 + 3cc: 7c 9c e2 a6 mfdcdbtrl r4 + 3d0: 7c 9d e2 a6 mfdcdbtrh r4 + 3d4: 7c 9d e2 a6 mfdcdbtrh r4 + 3d8: 7c 9f e2 a6 mficdbtr r4 + 3dc: 7c 9f e2 a6 mficdbtr r4 + 3e0: 7c 92 ea a6 mfmmucr r4 + 3e4: 7c 92 ea a6 mfmmucr r4 + 3e8: 7c 93 ea a6 mfccr0 r4 + 3ec: 7c 93 ea a6 mfccr0 r4 + 3f0: 7c 93 f2 a6 mficdbdr r4 + 3f4: 7c 93 f2 a6 mficdbdr r4 + 3f8: 7c 93 fa a6 mfdbdr r4 + 3fc: 7c 93 fa a6 mfdbdr r4 + 400: 7c 96 0b a6 mtdecar r4 + 404: 7c 96 0b a6 mtdecar r4 diff --git a/gas/testsuite/gas/ppc/titan.s b/gas/testsuite/gas/ppc/titan.s new file mode 100644 index 0000000..7155a5a --- /dev/null +++ b/gas/testsuite/gas/ppc/titan.s @@ -0,0 +1,261 @@ +# AppliedMicro Titan tests + .section ".text" +start: + blr + tweqi 1, 0 + macchw 2, 1, 0 + macchw. 2, 1, 0 + macchwo 2, 1, 0 + macchwo. 2, 1, 0 + macchws 2, 1, 0 + macchws. 2, 1, 0 + macchwso 2, 1, 0 + macchwso. 2, 1, 0 + macchwsu 2, 1, 0 + macchwsu. 2, 1, 0 + macchwsuo 2, 1, 0 + macchwsuo. 2, 1, 0 + macchwu 2, 1, 0 + macchwu. 2, 1, 0 + macchwuo 2, 1, 0 + macchwuo. 2, 1, 0 + machhw 2, 1, 0 + machhw. 2, 1, 0 + machhwo 2, 1, 0 + machhwo. 2, 1, 0 + machhws 2, 1, 0 + machhws. 2, 1, 0 + machhwso 2, 1, 0 + machhwso. 2, 1, 0 + machhwsu 2, 1, 0 + machhwsu. 2, 1, 0 + machhwsuo 2, 1, 0 + machhwsuo. 2, 1, 0 + machhwu 2, 1, 0 + machhwu. 2, 1, 0 + machhwuo 2, 1, 0 + machhwuo. 2, 1, 0 + maclhw 2, 1, 0 + maclhw. 2, 1, 0 + maclhwo 2, 1, 0 + maclhwo. 2, 1, 0 + maclhws 2, 1, 0 + maclhws. 2, 1, 0 + maclhwso 2, 1, 0 + maclhwso. 2, 1, 0 + maclhwsu 2, 1, 0 + maclhwsu. 2, 1, 0 + maclhwsuo 2, 1, 0 + maclhwsuo. 2, 1, 0 + maclhwu 2, 1, 0 + maclhwu. 2, 1, 0 + maclhwuo 2, 1, 0 + maclhwuo. 2, 1, 0 + nmacchw 2, 1, 0 + nmacchw. 2, 1, 0 + nmacchwo 2, 1, 0 + nmacchwo. 2, 1, 0 + nmacchws 2, 1, 0 + nmacchws. 2, 1, 0 + nmacchwso 2, 1, 0 + nmacchwso. 2, 1, 0 + nmachhw 2, 1, 0 + nmachhw. 2, 1, 0 + nmachhwo 2, 1, 0 + nmachhwo. 2, 1, 0 + nmachhws 2, 1, 0 + nmachhws. 2, 1, 0 + nmachhwso 2, 1, 0 + nmachhwso. 2, 1, 0 + nmaclhw 2, 1, 0 + nmaclhw. 2, 1, 0 + nmaclhwo 2, 1, 0 + nmaclhwo. 2, 1, 0 + nmaclhws 2, 1, 0 + nmaclhws. 2, 1, 0 + nmaclhwso 2, 1, 0 + nmaclhwso. 2, 1, 0 + mulchw 2, 1, 0 + mulchw. 2, 1, 0 + mulchwu 2, 1, 0 + mulchwu. 2, 1, 0 + mulhhw 2, 1, 0 + mulhhw. 2, 1, 0 + mulhhwu 2, 1, 0 + mulhhwu. 2, 1, 0 + mullhw 2, 1, 0 + mullhw. 2, 1, 0 + mullhwu 2, 1, 0 + mullhwu. 2, 1, 0 + dlmzb 2, 1, 0 + dlmzb. 2, 1, 0 + dccci 2, 1 + iccci 2, 1 + dcblc 0, 2, 1 + dcblc 2, 1 + dcblc 1, 2, 1 + dcbtls 0, 2, 1 + dcbtls 2, 1 + dcbtls 1, 2, 1 + dcbtstls 0, 2, 1 + dcbtstls 2, 1 + dcbtstls 1, 2, 1 + icblc 0, 2, 1 + icblc 2, 1 + icblc 1, 2, 1 + icbtls 0, 2, 1 + icbtls 2, 1 + icbtls 1, 2, 1 + dcread 2, 1, 0 + icread 2, 1 + mfpmr 2, 1 + mfpmr 1, 2 + mfspr 4, 0x001 + mfxer 4 + mfspr 4, 0x008 + mflr 4 + mfspr 4, 0x009 + mfctr 4 + mfspr 4, 0x016 + mfdec 4 + mfspr 4, 0x01a + mfsrr0 4 + mfspr 4, 0x01b + mfsrr1 4 + mfspr 4, 0x030 + mfpid 4 + mfspr 4, 0x03a + mfcsrr0 4 + mfspr 4, 0x03b + mfcsrr1 4 + mfspr 4, 0x03d + mfdear 4 + mfspr 4, 0x03e + mfesr 4 + mfspr 4, 0x03f + mfivpr 4 + mfspr 4, 0x100 + mfusprg0 4 + mfspr 4, 0x104 + mfsprg4 4 + mfspr 4, 0x105 + mfsprg5 4 + mfspr 4, 0x106 + mfsprg6 4 + mfspr 4, 0x107 + mfsprg7 4 + mfspr 4, 0x10c + mftbl 4 + mftb 4 + mfspr 4, 0x10d + mftbu 4 + mfspr 4, 0x110 + mfsprg0 4 + mfspr 4, 0x111 + mfsprg1 4 + mfspr 4, 0x112 + mfsprg2 4 + mfspr 4, 0x113 + mfsprg3 4 + mfspr 4, 0x11e + mfpir 4 + mfspr 4, 0x11f + mfpvr 4 + mfspr 4, 0x130 + mfdbsr 4 + mfspr 4, 0x134 + mfdbcr0 4 + mfspr 4, 0x135 + mfdbcr1 4 + mfspr 4, 0x136 + mfdbcr2 4 + mfspr 4, 0x138 + mfiac1 4 + mfspr 4, 0x139 + mfiac2 4 + mfspr 4, 0x13a + mfiac3 4 + mfspr 4, 0x13b + mfiac4 4 + mfspr 4, 0x13c + mfdac1 4 + mfspr 4, 0x13d + mfdac2 4 + mfspr 4, 0x13e + mfdvc1 4 + mfspr 4, 0x13f + mfdvc2 4 + mfspr 4, 0x150 + mftsr 4 + mfspr 4, 0x154 + mftcr 4 + mfspr 4, 0x190 + mfivor0 4 + mfspr 4, 0x191 + mfivor1 4 + mfspr 4, 0x192 + mfivor2 4 + mfspr 4, 0x193 + mfivor3 4 + mfspr 4, 0x194 + mfivor4 4 + mfspr 4, 0x195 + mfivor5 4 + mfspr 4, 0x196 + mfivor6 4 + mfspr 4, 0x197 + mfivor7 4 + mfspr 4, 0x198 + mfivor8 4 + mfspr 4, 0x199 + mfivor9 4 + mfspr 4, 0x19a + mfivor10 4 + mfspr 4, 0x19b + mfivor11 4 + mfspr 4, 0x19c + mfivor12 4 + mfspr 4, 0x19d + mfivor13 4 + mfspr 4, 0x19e + mfivor14 4 + mfspr 4, 0x19f + mfivor15 4 + mfspr 4, 0x213 + mfivor35 4 + mfspr 4, 0x23a + mfmcsrr0 4 + mfspr 4, 0x23b + mfmcsrr1 4 + mfspr 4, 0x23c + mfmcsr 4 + mfspr 4, 0x370 + mfivndx 4 + mfspr 4, 0x371 + mfdvndx 4 + mfspr 4, 0x372 + mfivlim 4 + mfspr 4, 0x373 + mfdvlim 4 + mfspr 4, 0x374 + mfclcsr 4 + mfspr 4, 0x378 + mfccr1 4 + mfspr 4, 0x39b + mfrstcfg 4 + mfspr 4, 0x39c + mfdcdbtrl 4 + mfspr 4, 0x39d + mfdcdbtrh 4 + mfspr 4, 0x39f + mficdbtr 4 + mfspr 4, 0x3b2 + mfmmucr 4 + mfspr 4, 0x3b3 + mfccr0 4 + mfspr 4, 0x3d3 + mficdbdr 4 + mfspr 4, 0x3f3 + mfdbdr 4 + mtspr 0x036, 4 + mtdecar 4 |