diff --git a/libgloss/ChangeLog b/libgloss/ChangeLog index 5259f75a1..4e72045e8 100644 --- a/libgloss/ChangeLog +++ b/libgloss/ChangeLog @@ -1,3 +1,8 @@ +2012-01-17 Bin Cheng + + * arm/linux-crt0.c: Use ldr instead of adr to get address of + _start_thumb. + 2011-12-18 Mike Frysinger * bfin/clear_cache_range.c: New file. diff --git a/libgloss/arm/linux-crt0.c b/libgloss/arm/linux-crt0.c index 2c1dd4af3..c313d269f 100644 --- a/libgloss/arm/linux-crt0.c +++ b/libgloss/arm/linux-crt0.c @@ -18,8 +18,10 @@ asm("\n" ".global _start\n" ".type _start, %function\n" "_start:\n" - "\tadr r0, _start_thumb+1\n" + "\tldr r0, .LC0\n" "\tbx r0\n" + ".LC0:\n" + "\t.word _start_thumb\n" ".size _start, .-_start\n"); __attribute__((naked, used))