Roland McGrath - [PATCH roland/arm] ARM: Add missing sfi_breg in LDR_GLOBAL macro. (original) (raw)
This is the mail archive of the libc-alpha@sourceware.orgmailing list for the glibc 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] |
- From: Roland McGrath
- To: "GNU C. Library"
- Date: Fri, 6 Feb 2015 10:51:48 -0800 (PST)
- Subject: [PATCH roland/arm] ARM: Add missing sfi_breg in LDR_GLOBAL macro.
- Authentication-results: sourceware.org; auth=none
The main motivation for my refactoring of LDR_GLOBAL and making more things use it was to consolidate the sfi_* uses there. But then I forgot to add the necessary ones to the rewritten macros!
I think it's trivially obvious that this does not affect arm*-linux* configurations. OK?
Thanks, Roland
* sysdeps/arm/sysdep.h [!PROF] [ARCH_HAS_T2 && !PIC] (LDR_GLOBAL):
Use sfi_breg on ldr.
[!PROF] [ARCH_HAS_T2 && PIC && ARM_PCREL_MOVW_OK] (LDR_GLOBAL):
Likewise.
--- a/sysdeps/arm/sysdep.h +++ b/sysdeps/arm/sysdep.h @@ -198,7 +198,7 @@
define LDR_GLOBAL(R, T, SYMBOL, CONSTANT) \
movw T, #:lower16:SYMBOL; \
movt T, #:upper16:SYMBOL; \
- ldr R, [T, $CONSTANT]
- sfi_breg T, ldr R, [\B, $CONSTANT]
elif defined (ARCH_HAS_T2) && defined (PIC) && ARM_PCREL_MOVW_OK
define LDR_GLOBAL(R, T, SYMBOL, CONSTANT) \
movw R, #:lower16:_GLOBAL_OFFSET_TABLE_ - 97f - PC_OFS; \
@@ -212,7 +212,7 @@
97: add R, R, pc;
98: LDST_PC_INDEXED (ldr, T, T, T);
LDST_INDEXED (ldr, R, T, R, T);
- ldr R, [R, $CONSTANT]
+ sfi_breg R, ldr R, [\B, $CONSTANT]
else
define LDR_GLOBAL(R, T, SYMBOL, CONSTANT) \
ldr T, 99f; \
- Follow-Ups:
- Re: [PATCH roland/arm] ARM: Add missing sfi_breg in LDR_GLOBAL macro.
* From: Joseph Myers
- Re: [PATCH roland/arm] ARM: Add missing sfi_breg in LDR_GLOBAL macro.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |