ARM: Add missing sfi_breg in LDR_GLOBAL macro.

This commit is contained in:
Roland McGrath 2015-02-06 14:42:18 -08:00
parent 022f481264
commit f8d1bb4c25
2 changed files with 7 additions and 2 deletions

View File

@ -1,5 +1,10 @@
2015-02-06 Roland McGrath <roland@hack.frob.com>
* 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.
* nptl/tst-cancel25.c (tf2): Test for SIGCANCEL being blocked only if
it's defined.
* nptl/tst-signal7.c (do_test): Test SIGCANCEL only if it's defined.

View File

@ -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; \