[Ada] armhf-linux: symbolic tracebacks

gcc/ada/

	* libgnat/s-objrea.ads (Object_Arch): Add ARM enum
	* libgnat/s-objrea.adb (Initialize): Add EM_ARM case.
	(Read_Address): Add ARM case to 32bit read.
	* Makefile.rtl: Add trasym units to the runtime for armhf-linux.
This commit is contained in:
Doug Rupp 2020-11-30 11:09:58 -08:00 committed by Pierre-Marie de Rodat
parent 29cd42e019
commit aa44eaca60
3 changed files with 10 additions and 1 deletions

View File

@ -2381,12 +2381,14 @@ ifeq ($(strip $(filter-out arm% linux-gnueabi%,$(target_cpu) $(target_os))),)
s-tasinf.adb<libgnarl/s-tasinf__linux.adb \
s-taspri.ads<libgnarl/s-taspri__posix-noaltstack.ads \
s-tpopsp.adb<libgnarl/s-tpopsp__posix-foreign.adb \
$(TRASYM_DWARF_UNIX_PAIRS) \
$(ATOMICS_TARGET_PAIRS) \
$(ATOMICS_BUILTINS_TARGET_PAIRS) \
system.ads<libgnat/system-linux-arm.ads
TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
EXTRA_GNATRTL_NONTASKING_OBJS += $(TRASYM_DWARF_UNIX_OBJS)
EXTRA_GNATRTL_TASKING_OBJS=s-linux.o
EH_MECHANISM=-arm
THREADSLIB = -lpthread

View File

@ -645,6 +645,9 @@ package body System.Object_Reader is
when EM_X86_64 =>
Res.Arch := x86_64;
when EM_ARM =>
Res.Arch := ARM;
when others =>
raise Format_Error with "unrecognized architecture";
end case;
@ -2030,6 +2033,7 @@ package body System.Object_Reader is
| MIPS
| PPC
| SPARC
| ARM
=>
Address_32 := Read (S);
return uint64 (Address_32);

View File

@ -117,9 +117,12 @@ package System.Object_Reader is
PPC,
-- 32-bit PowerPC
PPC64);
PPC64,
-- 64-bit PowerPC
ARM);
-- 32-bit ARM
------------------
-- Target types --
------------------