This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH/RFA] ARM MASK_RETURN_ADDR fix for mixed 26/32-bit


On Thu, Sep 05, 2002 at 11:11:10AM +0100, Richard Earnshaw wrote:

 > The patch needs to be fixed to work with -mthumb before this can go in.  
 > For that case it should always return ~0 (Since I think we need to 
 > preserve the Thumb bit in this case).

Something as simple as just testing for TARGET_TUMB in addition to
arm_arch4?

(I'm pretty sure the run-time test would have also worked for Thumb, but
it's certainly true that if you're using Thumb, you're not running in 26-bit
mode :-)

        * config/arm/arm-protos.h (arm_gen_return_addr_mask): New
        prototype.
        * config/arm/arm.c (arm_gen_return_addr_mask): New function.
        * config/arm/arm.h (MASK_RETURN_ADDR): Use arm_gen_return_addr_mask
        if not APCS26 and not Thumb or ARMv4-or-higher.
        * config/arm/arm.md (UNSPEC_CHECK_ARCH): Define.
        (return_addr_mask, *check_arch2): New.

-- 
        -- Jason R. Thorpe <thorpej@wasabisystems.com>

Attachment: arm-patch1
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]