ref: c5434abc02adcf089c4e8a808d5688cac82638cf
parent: 3c755577b85f5bf0a875e5f8f33ecb99a26d316d
author: Attila Nagy <attilanagy@google.com>
date: Fri Nov 18 07:28:43 EST 2011
ads2gas translates PRESERVE8, REQUIRE8 and ARM directives Change-Id: I22c547af80e0bce0c7b5f6054ad0aa61f37d717b
--- a/build/make/ads2gas.pl
+++ b/build/make/ads2gas.pl
@@ -126,15 +126,14 @@
# ALIGN directive
s/ALIGN/.balign/g;
- # Strip ARM
- s/\sARM/@ ARM/g;
+ # ARM code
+ s/\sARM/.arm/g;
- # Strip REQUIRE8
- #s/\sREQUIRE8/@ REQUIRE8/g;
- s/\sREQUIRE8/@ /g; #EQU cause problem
+ # REQUIRE8 Stack is required to be 8-byte aligned
+ s/\sREQUIRE8/.eabi_attribute Tag_ABI_align_needed, 1/g;
- # Strip PRESERVE8
- s/\sPRESERVE8/@ PRESERVE8/g;
+ # PRESERVE8 Stack 8-byte align is preserved
+ s/\sPRESERVE8/.eabi_attribute Tag_ABI_align_preserved, 1/g;
# Use PROC and ENDP to give the symbols a .size directive.
# This makes them show up properly in debugging tools like gdb and valgrind.