From bf3eeda76c05e26f2fde170e4650a3edf220e135 Mon Sep 17 00:00:00 2001 From: Nathan Sidwell Date: Thu, 13 May 2010 08:15:04 +0000 Subject: [PATCH] * config/tc-arm.c (md_assemble): Clarify current mode in error messages about unsupported instructions. (UT): Delete #define. (insns): Adjust cbnz, cbz appropriately. testsuite: * gas/arm/armv1-bad.l: Adjust expected error text. * gas/arm/arch7em-bad.l: Likewise. * gas/arm/arch7m-bad.l: Likewise. * gas/arm/thumb-w-bad.l: Likewise. * gas/arm/arm7-bad.d: New. * gas/arm/arm7-bad.l: New. * gas/arm/arm7-bad.s: New. --- gas/ChangeLog | 7 + gas/config/tc-arm.c | 16 +- gas/testsuite/ChangeLog | 10 ++ gas/testsuite/gas/arm/arch7em-bad.l | 262 ++++++++++++++-------------- gas/testsuite/gas/arm/arch7m-bad.l | 2 +- gas/testsuite/gas/arm/arm7-bad.d | 3 + gas/testsuite/gas/arm/arm7-bad.l | 2 + gas/testsuite/gas/arm/arm7-bad.s | 7 + gas/testsuite/gas/arm/armv1-bad.l | 2 +- gas/testsuite/gas/arm/thumb-w-bad.l | 4 +- 10 files changed, 172 insertions(+), 143 deletions(-) create mode 100644 gas/testsuite/gas/arm/arm7-bad.d create mode 100644 gas/testsuite/gas/arm/arm7-bad.l create mode 100644 gas/testsuite/gas/arm/arm7-bad.s diff --git a/gas/ChangeLog b/gas/ChangeLog index 0ec4f604ee7..d6dd29216e5 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,10 @@ +2010-05-13 Nathan Sidwell + + * config/tc-arm.c (md_assemble): Clarify current mode in error + messages about unsupported instructions. + (UT): Delete #define. + (insns): Adjust cbnz, cbz appropriately. + 2010-05-11 Andrew Stubbs * config/tc-arm.c (aeabi_set_public_attributes): Set Tag_DIV_use. diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c index 8c9b33b1b8b..bc0329469b4 100644 --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -15719,7 +15719,7 @@ md_assemble (char *str) || (thumb_mode == 1 && !ARM_CPU_HAS_FEATURE (variant, *opcode->tvariant))) { - as_bad (_("selected processor does not support `%s'"), str); + as_bad (_("selected processor does not support Thumb mode `%s'"), str); return; } if (inst.cond != COND_ALWAYS && !unified_syntax @@ -15744,7 +15744,7 @@ md_assemble (char *str) inst.size_req = 2; else if (inst.size_req == 4) { - as_bad (_("selected processor does not support `%s'"), str); + as_bad (_("selected processor does not support Thumb-2 mode `%s'"), str); return; } } @@ -15810,7 +15810,7 @@ md_assemble (char *str) && !(opcode->avariant && ARM_CPU_HAS_FEATURE (cpu_variant, *opcode->avariant))) { - as_bad (_("selected processor does not support `%s'"), str); + as_bad (_("selected processor does not support ARM mode `%s'"), str); return; } if (inst.size_req) @@ -16439,9 +16439,6 @@ static struct asm_barrier_opt barrier_opt_names[] = #define do_0 0 -/* Thumb-only, unconditional. */ -#define UT(mnem, op, nops, ops, te) TUE (mnem, 0, op, nops, ops, 0, te) - static const struct asm_opcode insns[] = { #define ARM_VARIANT &arm_ext_v1 /* Core ARM Instructions. */ @@ -16898,8 +16895,11 @@ static const struct asm_opcode insns[] = TC3("ldrsbt", 03000d0, f9100e00, 2, (RRnpc_npcsp, ADDR), ldsttv4, t_ldstt), TC3("strht", 02000b0, f8200e00, 2, (RRnpc_npcsp, ADDR), ldsttv4, t_ldstt), - UT("cbnz", b900, 2, (RR, EXP), t_cbz), - UT("cbz", b100, 2, (RR, EXP), t_cbz), + /* Thumb-only instructions. */ +#undef ARM_VARIANT +#define ARM_VARIANT NULL + TUE("cbnz", 0, b900, 2, (RR, EXP), 0, t_cbz), + TUE("cbz", 0, b100, 2, (RR, EXP), 0, t_cbz), /* ARM does not really have an IT instruction, so always allow it. The opcode is copied from Thumb in order to allow warnings in diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 1d04b8965bf..628239d35a1 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,13 @@ +2010-05-13 Nathan Sidwell + + * gas/arm/armv1-bad.l: Adjust expected error text. + * gas/arm/arch7em-bad.l: Likewise. + * gas/arm/arch7m-bad.l: Likewise. + * gas/arm/thumb-w-bad.l: Likewise. + * gas/arm/arm7-bad.d: New. + * gas/arm/arm7-bad.l: New. + * gas/arm/arm7-bad.s: New. + 2010-05-13 Alan Modra * gas/all/gas.exp: Don't run byte test on powerpc. diff --git a/gas/testsuite/gas/arm/arch7em-bad.l b/gas/testsuite/gas/arm/arch7em-bad.l index f3b3c794eb6..1c47825623a 100644 --- a/gas/testsuite/gas/arm/arch7em-bad.l +++ b/gas/testsuite/gas/arm/arch7em-bad.l @@ -1,132 +1,132 @@ [^:]*: Assembler messages: -[^:]*:8: Error: selected processor does not support `pkhbt r0,r0,r0' -[^:]*:9: Error: selected processor does not support `pkhbt r9,r0,r0' -[^:]*:10: Error: selected processor does not support `pkhbt r0,r9,r0' -[^:]*:11: Error: selected processor does not support `pkhbt r0,r0,r9' -[^:]*:12: Error: selected processor does not support `pkhbt r0,r0,r0,lsl#0x14' -[^:]*:13: Error: selected processor does not support `pkhbt r0,r0,r0,lsl#3' -[^:]*:14: Error: selected processor does not support `pkhtb r1,r2,r3' -[^:]*:15: Error: selected processor does not support `pkhtb r1,r2,r3,asr#0x11' -[^:]*:18: Error: selected processor does not support `qadd r1,r2,r3' -[^:]*:19: Error: selected processor does not support `qadd16 r1,r2,r3' -[^:]*:20: Error: selected processor does not support `qadd8 r1,r2,r3' -[^:]*:21: Error: selected processor does not support `qasx r1,r2,r3' -[^:]*:22: Error: selected processor does not support `qaddsubx r1,r2,r3' -[^:]*:23: Error: selected processor does not support `qdadd r1,r2,r3' -[^:]*:24: Error: selected processor does not support `qdsub r1,r2,r3' -[^:]*:25: Error: selected processor does not support `qsub r1,r2,r3' -[^:]*:26: Error: selected processor does not support `qsub16 r1,r2,r3' -[^:]*:27: Error: selected processor does not support `qsub8 r1,r2,r3' -[^:]*:28: Error: selected processor does not support `qsax r1,r2,r3' -[^:]*:29: Error: selected processor does not support `qsubaddx r1,r2,r3' -[^:]*:30: Error: selected processor does not support `sadd16 r1,r2,r3' -[^:]*:31: Error: selected processor does not support `sadd8 r1,r2,r3' -[^:]*:32: Error: selected processor does not support `sasx r1,r2,r3' -[^:]*:33: Error: selected processor does not support `saddsubx r1,r2,r3' -[^:]*:34: Error: selected processor does not support `ssub16 r1,r2,r3' -[^:]*:35: Error: selected processor does not support `ssub8 r1,r2,r3' -[^:]*:36: Error: selected processor does not support `ssax r1,r2,r3' -[^:]*:37: Error: selected processor does not support `ssubaddx r1,r2,r3' -[^:]*:38: Error: selected processor does not support `shadd16 r1,r2,r3' -[^:]*:39: Error: selected processor does not support `shadd8 r1,r2,r3' -[^:]*:40: Error: selected processor does not support `shasx r1,r2,r3' -[^:]*:41: Error: selected processor does not support `shaddsubx r1,r2,r3' -[^:]*:42: Error: selected processor does not support `shsub16 r1,r2,r3' -[^:]*:43: Error: selected processor does not support `shsub8 r1,r2,r3' -[^:]*:44: Error: selected processor does not support `shsax r1,r2,r3' -[^:]*:45: Error: selected processor does not support `shsubaddx r1,r2,r3' -[^:]*:46: Error: selected processor does not support `uadd16 r1,r2,r3' -[^:]*:47: Error: selected processor does not support `uadd8 r1,r2,r3' -[^:]*:48: Error: selected processor does not support `uasx r1,r2,r3' -[^:]*:49: Error: selected processor does not support `uaddsubx r1,r2,r3' -[^:]*:50: Error: selected processor does not support `usub16 r1,r2,r3' -[^:]*:51: Error: selected processor does not support `usub8 r1,r2,r3' -[^:]*:52: Error: selected processor does not support `usax r1,r2,r3' -[^:]*:53: Error: selected processor does not support `usubaddx r1,r2,r3' -[^:]*:54: Error: selected processor does not support `uhadd16 r1,r2,r3' -[^:]*:55: Error: selected processor does not support `uhadd8 r1,r2,r3' -[^:]*:56: Error: selected processor does not support `uhasx r1,r2,r3' -[^:]*:57: Error: selected processor does not support `uhaddsubx r1,r2,r3' -[^:]*:58: Error: selected processor does not support `uhsub16 r1,r2,r3' -[^:]*:59: Error: selected processor does not support `uhsub8 r1,r2,r3' -[^:]*:60: Error: selected processor does not support `uhsax r1,r2,r3' -[^:]*:61: Error: selected processor does not support `uhsubaddx r1,r2,r3' -[^:]*:62: Error: selected processor does not support `uqadd16 r1,r2,r3' -[^:]*:63: Error: selected processor does not support `uqadd8 r1,r2,r3' -[^:]*:64: Error: selected processor does not support `uqasx r1,r2,r3' -[^:]*:65: Error: selected processor does not support `uqaddsubx r1,r2,r3' -[^:]*:66: Error: selected processor does not support `uqsub16 r1,r2,r3' -[^:]*:67: Error: selected processor does not support `uqsub8 r1,r2,r3' -[^:]*:68: Error: selected processor does not support `uqsax r1,r2,r3' -[^:]*:69: Error: selected processor does not support `uqsubaddx r1,r2,r3' -[^:]*:70: Error: selected processor does not support `sel r1,r2,r3' -[^:]*:73: Error: selected processor does not support `smlabb r0,r0,r0,r0' -[^:]*:74: Error: selected processor does not support `smlabb r9,r0,r0,r0' -[^:]*:75: Error: selected processor does not support `smlabb r0,r9,r0,r0' -[^:]*:76: Error: selected processor does not support `smlabb r0,r0,r9,r0' -[^:]*:77: Error: selected processor does not support `smlabb r0,r0,r0,r9' -[^:]*:79: Error: selected processor does not support `smlatb r0,r0,r0,r0' -[^:]*:80: Error: selected processor does not support `smlabt r0,r0,r0,r0' -[^:]*:81: Error: selected processor does not support `smlatt r0,r0,r0,r0' -[^:]*:82: Error: selected processor does not support `smlawb r0,r0,r0,r0' -[^:]*:83: Error: selected processor does not support `smlawt r0,r0,r0,r0' -[^:]*:84: Error: selected processor does not support `smlad r0,r0,r0,r0' -[^:]*:85: Error: selected processor does not support `smladx r0,r0,r0,r0' -[^:]*:86: Error: selected processor does not support `smlsd r0,r0,r0,r0' -[^:]*:87: Error: selected processor does not support `smlsdx r0,r0,r0,r0' -[^:]*:88: Error: selected processor does not support `smmla r0,r0,r0,r0' -[^:]*:89: Error: selected processor does not support `smmlar r0,r0,r0,r0' -[^:]*:90: Error: selected processor does not support `smmls r0,r0,r0,r0' -[^:]*:91: Error: selected processor does not support `smmlsr r0,r0,r0,r0' -[^:]*:92: Error: selected processor does not support `usada8 r0,r0,r0,r0' -[^:]*:95: Error: selected processor does not support `smlalbb r0,r0,r0,r0' -[^:]*:96: Error: selected processor does not support `smlalbb r9,r0,r0,r0' -[^:]*:97: Error: selected processor does not support `smlalbb r0,r9,r0,r0' -[^:]*:98: Error: selected processor does not support `smlalbb r0,r0,r9,r0' -[^:]*:99: Error: selected processor does not support `smlalbb r0,r0,r0,r9' -[^:]*:101: Error: selected processor does not support `smlaltb r0,r0,r0,r0' -[^:]*:102: Error: selected processor does not support `smlalbt r0,r0,r0,r0' -[^:]*:103: Error: selected processor does not support `smlaltt r0,r0,r0,r0' -[^:]*:104: Error: selected processor does not support `smlald r0,r0,r0,r0' -[^:]*:105: Error: selected processor does not support `smlaldx r0,r0,r0,r0' -[^:]*:106: Error: selected processor does not support `smlsld r0,r0,r0,r0' -[^:]*:107: Error: selected processor does not support `smlsldx r0,r0,r0,r0' -[^:]*:108: Error: selected processor does not support `umaal r0,r0,r0,r0' -[^:]*:111: Error: selected processor does not support `smulbb r0,r0,r0' -[^:]*:112: Error: selected processor does not support `smulbb r9,r0,r0' -[^:]*:113: Error: selected processor does not support `smulbb r0,r9,r0' -[^:]*:114: Error: selected processor does not support `smulbb r0,r0,r9' -[^:]*:116: Error: selected processor does not support `smultb r0,r0,r0' -[^:]*:117: Error: selected processor does not support `smulbt r0,r0,r0' -[^:]*:118: Error: selected processor does not support `smultt r0,r0,r0' -[^:]*:119: Error: selected processor does not support `smulwb r0,r0,r0' -[^:]*:120: Error: selected processor does not support `smulwt r0,r0,r0' -[^:]*:121: Error: selected processor does not support `smmul r0,r0,r0' -[^:]*:122: Error: selected processor does not support `smmulr r0,r0,r0' -[^:]*:123: Error: selected processor does not support `smuad r0,r0,r0' -[^:]*:124: Error: selected processor does not support `smuadx r0,r0,r0' -[^:]*:125: Error: selected processor does not support `smusd r0,r0,r0' -[^:]*:126: Error: selected processor does not support `smusdx r0,r0,r0' -[^:]*:127: Error: selected processor does not support `usad8 r0,r0,r0' -[^:]*:130: Error: selected processor does not support `ssat16 r0,#1,r0' -[^:]*:131: Error: selected processor does not support `ssat16 r9,#1,r0' -[^:]*:132: Error: selected processor does not support `ssat16 r0,#10,r0' -[^:]*:133: Error: selected processor does not support `ssat16 r0,#1,r9' -[^:]*:135: Error: selected processor does not support `usat16 r0,#0,r0' -[^:]*:136: Error: selected processor does not support `usat16 r9,#0,r0' -[^:]*:137: Error: selected processor does not support `usat16 r0,#9,r0' -[^:]*:138: Error: selected processor does not support `usat16 r0,#0,r9' -[^:]*:141: Error: selected processor does not support `sxtb16 r1,r2' -[^:]*:142: Error: selected processor does not support `sxtb16 r8,r9' -[^:]*:143: Error: selected processor does not support `uxtb16 r1,r2' -[^:]*:144: Error: selected processor does not support `uxtb16 r8,r9' -[^:]*:147: Error: selected processor does not support `sxtab r0,r0,r0' -[^:]*:148: Error: selected processor does not support `sxtab r0,r0,r0,ror#0' -[^:]*:149: Error: selected processor does not support `sxtab r9,r0,r0,ror#8' -[^:]*:150: Error: selected processor does not support `sxtab r0,r9,r0,ror#16' -[^:]*:151: Error: selected processor does not support `sxtab r0,r0,r9,ror#24' -[^:]*:153: Error: selected processor does not support `sxtab16 r1,r2,r3' -[^:]*:154: Error: selected processor does not support `sxtah r1,r2,r3' -[^:]*:155: Error: selected processor does not support `uxtab r1,r2,r3' -[^:]*:156: Error: selected processor does not support `uxtab16 r1,r2,r3' -[^:]*:157: Error: selected processor does not support `uxtah r1,r2,r3' +[^:]*:8: Error: selected processor does not support Thumb mode `pkhbt r0,r0,r0' +[^:]*:9: Error: selected processor does not support Thumb mode `pkhbt r9,r0,r0' +[^:]*:10: Error: selected processor does not support Thumb mode `pkhbt r0,r9,r0' +[^:]*:11: Error: selected processor does not support Thumb mode `pkhbt r0,r0,r9' +[^:]*:12: Error: selected processor does not support Thumb mode `pkhbt r0,r0,r0,lsl#0x14' +[^:]*:13: Error: selected processor does not support Thumb mode `pkhbt r0,r0,r0,lsl#3' +[^:]*:14: Error: selected processor does not support Thumb mode `pkhtb r1,r2,r3' +[^:]*:15: Error: selected processor does not support Thumb mode `pkhtb r1,r2,r3,asr#0x11' +[^:]*:18: Error: selected processor does not support Thumb mode `qadd r1,r2,r3' +[^:]*:19: Error: selected processor does not support Thumb mode `qadd16 r1,r2,r3' +[^:]*:20: Error: selected processor does not support Thumb mode `qadd8 r1,r2,r3' +[^:]*:21: Error: selected processor does not support Thumb mode `qasx r1,r2,r3' +[^:]*:22: Error: selected processor does not support Thumb mode `qaddsubx r1,r2,r3' +[^:]*:23: Error: selected processor does not support Thumb mode `qdadd r1,r2,r3' +[^:]*:24: Error: selected processor does not support Thumb mode `qdsub r1,r2,r3' +[^:]*:25: Error: selected processor does not support Thumb mode `qsub r1,r2,r3' +[^:]*:26: Error: selected processor does not support Thumb mode `qsub16 r1,r2,r3' +[^:]*:27: Error: selected processor does not support Thumb mode `qsub8 r1,r2,r3' +[^:]*:28: Error: selected processor does not support Thumb mode `qsax r1,r2,r3' +[^:]*:29: Error: selected processor does not support Thumb mode `qsubaddx r1,r2,r3' +[^:]*:30: Error: selected processor does not support Thumb mode `sadd16 r1,r2,r3' +[^:]*:31: Error: selected processor does not support Thumb mode `sadd8 r1,r2,r3' +[^:]*:32: Error: selected processor does not support Thumb mode `sasx r1,r2,r3' +[^:]*:33: Error: selected processor does not support Thumb mode `saddsubx r1,r2,r3' +[^:]*:34: Error: selected processor does not support Thumb mode `ssub16 r1,r2,r3' +[^:]*:35: Error: selected processor does not support Thumb mode `ssub8 r1,r2,r3' +[^:]*:36: Error: selected processor does not support Thumb mode `ssax r1,r2,r3' +[^:]*:37: Error: selected processor does not support Thumb mode `ssubaddx r1,r2,r3' +[^:]*:38: Error: selected processor does not support Thumb mode `shadd16 r1,r2,r3' +[^:]*:39: Error: selected processor does not support Thumb mode `shadd8 r1,r2,r3' +[^:]*:40: Error: selected processor does not support Thumb mode `shasx r1,r2,r3' +[^:]*:41: Error: selected processor does not support Thumb mode `shaddsubx r1,r2,r3' +[^:]*:42: Error: selected processor does not support Thumb mode `shsub16 r1,r2,r3' +[^:]*:43: Error: selected processor does not support Thumb mode `shsub8 r1,r2,r3' +[^:]*:44: Error: selected processor does not support Thumb mode `shsax r1,r2,r3' +[^:]*:45: Error: selected processor does not support Thumb mode `shsubaddx r1,r2,r3' +[^:]*:46: Error: selected processor does not support Thumb mode `uadd16 r1,r2,r3' +[^:]*:47: Error: selected processor does not support Thumb mode `uadd8 r1,r2,r3' +[^:]*:48: Error: selected processor does not support Thumb mode `uasx r1,r2,r3' +[^:]*:49: Error: selected processor does not support Thumb mode `uaddsubx r1,r2,r3' +[^:]*:50: Error: selected processor does not support Thumb mode `usub16 r1,r2,r3' +[^:]*:51: Error: selected processor does not support Thumb mode `usub8 r1,r2,r3' +[^:]*:52: Error: selected processor does not support Thumb mode `usax r1,r2,r3' +[^:]*:53: Error: selected processor does not support Thumb mode `usubaddx r1,r2,r3' +[^:]*:54: Error: selected processor does not support Thumb mode `uhadd16 r1,r2,r3' +[^:]*:55: Error: selected processor does not support Thumb mode `uhadd8 r1,r2,r3' +[^:]*:56: Error: selected processor does not support Thumb mode `uhasx r1,r2,r3' +[^:]*:57: Error: selected processor does not support Thumb mode `uhaddsubx r1,r2,r3' +[^:]*:58: Error: selected processor does not support Thumb mode `uhsub16 r1,r2,r3' +[^:]*:59: Error: selected processor does not support Thumb mode `uhsub8 r1,r2,r3' +[^:]*:60: Error: selected processor does not support Thumb mode `uhsax r1,r2,r3' +[^:]*:61: Error: selected processor does not support Thumb mode `uhsubaddx r1,r2,r3' +[^:]*:62: Error: selected processor does not support Thumb mode `uqadd16 r1,r2,r3' +[^:]*:63: Error: selected processor does not support Thumb mode `uqadd8 r1,r2,r3' +[^:]*:64: Error: selected processor does not support Thumb mode `uqasx r1,r2,r3' +[^:]*:65: Error: selected processor does not support Thumb mode `uqaddsubx r1,r2,r3' +[^:]*:66: Error: selected processor does not support Thumb mode `uqsub16 r1,r2,r3' +[^:]*:67: Error: selected processor does not support Thumb mode `uqsub8 r1,r2,r3' +[^:]*:68: Error: selected processor does not support Thumb mode `uqsax r1,r2,r3' +[^:]*:69: Error: selected processor does not support Thumb mode `uqsubaddx r1,r2,r3' +[^:]*:70: Error: selected processor does not support Thumb mode `sel r1,r2,r3' +[^:]*:73: Error: selected processor does not support Thumb mode `smlabb r0,r0,r0,r0' +[^:]*:74: Error: selected processor does not support Thumb mode `smlabb r9,r0,r0,r0' +[^:]*:75: Error: selected processor does not support Thumb mode `smlabb r0,r9,r0,r0' +[^:]*:76: Error: selected processor does not support Thumb mode `smlabb r0,r0,r9,r0' +[^:]*:77: Error: selected processor does not support Thumb mode `smlabb r0,r0,r0,r9' +[^:]*:79: Error: selected processor does not support Thumb mode `smlatb r0,r0,r0,r0' +[^:]*:80: Error: selected processor does not support Thumb mode `smlabt r0,r0,r0,r0' +[^:]*:81: Error: selected processor does not support Thumb mode `smlatt r0,r0,r0,r0' +[^:]*:82: Error: selected processor does not support Thumb mode `smlawb r0,r0,r0,r0' +[^:]*:83: Error: selected processor does not support Thumb mode `smlawt r0,r0,r0,r0' +[^:]*:84: Error: selected processor does not support Thumb mode `smlad r0,r0,r0,r0' +[^:]*:85: Error: selected processor does not support Thumb mode `smladx r0,r0,r0,r0' +[^:]*:86: Error: selected processor does not support Thumb mode `smlsd r0,r0,r0,r0' +[^:]*:87: Error: selected processor does not support Thumb mode `smlsdx r0,r0,r0,r0' +[^:]*:88: Error: selected processor does not support Thumb mode `smmla r0,r0,r0,r0' +[^:]*:89: Error: selected processor does not support Thumb mode `smmlar r0,r0,r0,r0' +[^:]*:90: Error: selected processor does not support Thumb mode `smmls r0,r0,r0,r0' +[^:]*:91: Error: selected processor does not support Thumb mode `smmlsr r0,r0,r0,r0' +[^:]*:92: Error: selected processor does not support Thumb mode `usada8 r0,r0,r0,r0' +[^:]*:95: Error: selected processor does not support Thumb mode `smlalbb r0,r0,r0,r0' +[^:]*:96: Error: selected processor does not support Thumb mode `smlalbb r9,r0,r0,r0' +[^:]*:97: Error: selected processor does not support Thumb mode `smlalbb r0,r9,r0,r0' +[^:]*:98: Error: selected processor does not support Thumb mode `smlalbb r0,r0,r9,r0' +[^:]*:99: Error: selected processor does not support Thumb mode `smlalbb r0,r0,r0,r9' +[^:]*:101: Error: selected processor does not support Thumb mode `smlaltb r0,r0,r0,r0' +[^:]*:102: Error: selected processor does not support Thumb mode `smlalbt r0,r0,r0,r0' +[^:]*:103: Error: selected processor does not support Thumb mode `smlaltt r0,r0,r0,r0' +[^:]*:104: Error: selected processor does not support Thumb mode `smlald r0,r0,r0,r0' +[^:]*:105: Error: selected processor does not support Thumb mode `smlaldx r0,r0,r0,r0' +[^:]*:106: Error: selected processor does not support Thumb mode `smlsld r0,r0,r0,r0' +[^:]*:107: Error: selected processor does not support Thumb mode `smlsldx r0,r0,r0,r0' +[^:]*:108: Error: selected processor does not support Thumb mode `umaal r0,r0,r0,r0' +[^:]*:111: Error: selected processor does not support Thumb mode `smulbb r0,r0,r0' +[^:]*:112: Error: selected processor does not support Thumb mode `smulbb r9,r0,r0' +[^:]*:113: Error: selected processor does not support Thumb mode `smulbb r0,r9,r0' +[^:]*:114: Error: selected processor does not support Thumb mode `smulbb r0,r0,r9' +[^:]*:116: Error: selected processor does not support Thumb mode `smultb r0,r0,r0' +[^:]*:117: Error: selected processor does not support Thumb mode `smulbt r0,r0,r0' +[^:]*:118: Error: selected processor does not support Thumb mode `smultt r0,r0,r0' +[^:]*:119: Error: selected processor does not support Thumb mode `smulwb r0,r0,r0' +[^:]*:120: Error: selected processor does not support Thumb mode `smulwt r0,r0,r0' +[^:]*:121: Error: selected processor does not support Thumb mode `smmul r0,r0,r0' +[^:]*:122: Error: selected processor does not support Thumb mode `smmulr r0,r0,r0' +[^:]*:123: Error: selected processor does not support Thumb mode `smuad r0,r0,r0' +[^:]*:124: Error: selected processor does not support Thumb mode `smuadx r0,r0,r0' +[^:]*:125: Error: selected processor does not support Thumb mode `smusd r0,r0,r0' +[^:]*:126: Error: selected processor does not support Thumb mode `smusdx r0,r0,r0' +[^:]*:127: Error: selected processor does not support Thumb mode `usad8 r0,r0,r0' +[^:]*:130: Error: selected processor does not support Thumb mode `ssat16 r0,#1,r0' +[^:]*:131: Error: selected processor does not support Thumb mode `ssat16 r9,#1,r0' +[^:]*:132: Error: selected processor does not support Thumb mode `ssat16 r0,#10,r0' +[^:]*:133: Error: selected processor does not support Thumb mode `ssat16 r0,#1,r9' +[^:]*:135: Error: selected processor does not support Thumb mode `usat16 r0,#0,r0' +[^:]*:136: Error: selected processor does not support Thumb mode `usat16 r9,#0,r0' +[^:]*:137: Error: selected processor does not support Thumb mode `usat16 r0,#9,r0' +[^:]*:138: Error: selected processor does not support Thumb mode `usat16 r0,#0,r9' +[^:]*:141: Error: selected processor does not support Thumb mode `sxtb16 r1,r2' +[^:]*:142: Error: selected processor does not support Thumb mode `sxtb16 r8,r9' +[^:]*:143: Error: selected processor does not support Thumb mode `uxtb16 r1,r2' +[^:]*:144: Error: selected processor does not support Thumb mode `uxtb16 r8,r9' +[^:]*:147: Error: selected processor does not support Thumb mode `sxtab r0,r0,r0' +[^:]*:148: Error: selected processor does not support Thumb mode `sxtab r0,r0,r0,ror#0' +[^:]*:149: Error: selected processor does not support Thumb mode `sxtab r9,r0,r0,ror#8' +[^:]*:150: Error: selected processor does not support Thumb mode `sxtab r0,r9,r0,ror#16' +[^:]*:151: Error: selected processor does not support Thumb mode `sxtab r0,r0,r9,ror#24' +[^:]*:153: Error: selected processor does not support Thumb mode `sxtab16 r1,r2,r3' +[^:]*:154: Error: selected processor does not support Thumb mode `sxtah r1,r2,r3' +[^:]*:155: Error: selected processor does not support Thumb mode `uxtab r1,r2,r3' +[^:]*:156: Error: selected processor does not support Thumb mode `uxtab16 r1,r2,r3' +[^:]*:157: Error: selected processor does not support Thumb mode `uxtah r1,r2,r3' diff --git a/gas/testsuite/gas/arm/arch7m-bad.l b/gas/testsuite/gas/arm/arch7m-bad.l index c962dacdf03..2b730098c38 100644 --- a/gas/testsuite/gas/arm/arch7m-bad.l +++ b/gas/testsuite/gas/arm/arch7m-bad.l @@ -1,5 +1,5 @@ [^:]*: Assembler messages: [^:]*:5: Error: selected processor does not support 'A' form of this instruction -- `cpsie a' [^:]*:6: Error: Thumb does not support the 2-argument form of this instruction -- `cpsie i,#0x10' -[^:]*:7: Error: selected processor does not support `cps #0x10' +[^:]*:7: Error: selected processor does not support Thumb mode `cps #0x10' diff --git a/gas/testsuite/gas/arm/arm7-bad.d b/gas/testsuite/gas/arm/arm7-bad.d new file mode 100644 index 00000000000..45f900ccb61 --- /dev/null +++ b/gas/testsuite/gas/arm/arm7-bad.d @@ -0,0 +1,3 @@ +# name: ARM mode Thumb errors +# as: +# error-output: arm7-bad.l diff --git a/gas/testsuite/gas/arm/arm7-bad.l b/gas/testsuite/gas/arm/arm7-bad.l new file mode 100644 index 00000000000..9892320fd32 --- /dev/null +++ b/gas/testsuite/gas/arm/arm7-bad.l @@ -0,0 +1,2 @@ +.*arm7-bad.s: Assembler messages: +.*arm7-bad.s:5: Error: selected processor does not support ARM mode `cbnz r0,.\+6' diff --git a/gas/testsuite/gas/arm/arm7-bad.s b/gas/testsuite/gas/arm/arm7-bad.s new file mode 100644 index 00000000000..8b37187ee1d --- /dev/null +++ b/gas/testsuite/gas/arm/arm7-bad.s @@ -0,0 +1,7 @@ + .text + .cpu cortex-a8 + .syntax unified + .arm + cbnz r0, .+6 + .thumb + cbnz r0, .+6 diff --git a/gas/testsuite/gas/arm/armv1-bad.l b/gas/testsuite/gas/arm/armv1-bad.l index 423672c59b4..22090d58600 100644 --- a/gas/testsuite/gas/arm/armv1-bad.l +++ b/gas/testsuite/gas/arm/armv1-bad.l @@ -2,7 +2,7 @@ [^:]*:4: Error: invalid pseudo operation -- `str r0,=0x00ff0000' [^:]*:5: Error: bad expression -- `ldr r0,{r1}' [^:]*:6: Error: bad instruction `cmpl r0,r0' -[^:]*:7: Error: selected processor does not support `strh r0,\[r1\]' +[^:]*:7: Error: selected processor does not support ARM mode `strh r0,\[r1\]' [^:]*:8: Warning: writeback of base register is UNPREDICTABLE [^:]*:9: Warning: writeback of base register when in register list is UNPREDICTABLE [^:]*:10: Warning: writeback of base register is UNPREDICTABLE diff --git a/gas/testsuite/gas/arm/thumb-w-bad.l b/gas/testsuite/gas/arm/thumb-w-bad.l index 85ce74c3099..342b5e716a6 100644 --- a/gas/testsuite/gas/arm/thumb-w-bad.l +++ b/gas/testsuite/gas/arm/thumb-w-bad.l @@ -1,3 +1,3 @@ [^:]*: Assembler messages: -[^:]*:4: Error: selected processor does not support `mov.w r1,r2' -[^:]*:5: Error: selected processor does not support `mrs.w r0,apsr' +[^:]*:4: Error: selected processor does not support Thumb-2 mode `mov.w r1,r2' +[^:]*:5: Error: selected processor does not support Thumb mode `mrs.w r0,apsr' -- 2.30.2