On 14/11/2019 17:42, Richard Henderson wrote:
What I committed today does in fact ICE for thumb1, as you suspected.

I'm currently testing the following vs

   arm-sim/
   arm-sim/-mthumb
   arm-sim/-mcpu=cortex-a15/-mthumb.

which, with the default cpu for arm-elf-eabi, should test all of arm, thumb1,
thumb2.

I'm not thrilled about the ifdef in aarch-common.c, but I don't see a different
way to catch this case for arm and still compile for aarch64.

Ideas?

Particularly ones that work with __attribute__((target("thumb")))?  Which, now
that I've thought about it I really should be testing...


r~


+#ifdef TARGET_THUMB1
+      if (TARGET_THUMB1)

Could you use one of the standard HAVE_<insn> patterns?

+
+  if (!TARGET_THUMB1)
+    builtin_define ("__GCC_ASM_FLAG_OUTPUTS__");

I think you should use def_or_undef_macro() here, so that if the user switches to thumb using the target attribute extensions the macro will become undefined for the duration of that switch.

R.

Reply via email to