While paving the way to turn on unified syntax in ARM state I came across this use of TARGET_UNIFIED_ASM that really doesn't make sense.

The idea that pop has different encoding sizes is a property of the Thumb instruction set rather than a property of which form of unified syntax was used. I still have quite a large patch set for the unified asm switch but it seems useful to get this one out of the way to catch any other issues.

Tested with an appropriate set of multilibs on arm-none-eabi / applied. Bootstrapped on armhf.

Applied to trunk.

regards
Ramana


2015-06-26  Ramana Radhakrishnan  <ramana.radhakrish...@arm.com>

        * config/arm/arm.c (arm_output_multireg_pop): Fix use of
        TARGET_UNIFIED_ASM.
commit c085a69d4c1b9f9e43ef9655d1e88e7286ca3c2f
Author: Ramana Radhakrishnan <ramana.radhakrish...@arm.com>
Date:   Thu Jun 25 09:43:11 2015 +0100

    Use TARGET_THUMB2 instead of TARGET_UNIFIED_ASM.
    
    handle Thumb

diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index 09191e5..84e9e2f 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -17591,7 +17591,7 @@ arm_output_multireg_pop (rtx *operands, bool return_pc, 
rtx cond, bool reverse,
     }
 
   conditional = reverse ? "%?%D0" : "%?%d0";
-  if ((regno_base == SP_REGNUM) && TARGET_UNIFIED_ASM)
+  if ((regno_base == SP_REGNUM) && TARGET_THUMB)
     {
       /* Output pop (not stmfd) because it has a shorter encoding.  */
       gcc_assert (update);

Reply via email to