Ada: runtime support for 64bit arithmetics

This commit is contained in:
Alexander Senier 2018-06-21 21:05:04 +02:00 committed by Norman Feske
parent ad3f020605
commit 069a9ad56f
2 changed files with 7 additions and 2 deletions

View File

@ -3,7 +3,7 @@ include $(REP_DIR)/lib/import/import-ada.mk
ADALIB = $(ADA_RTS)/adalib ADALIB = $(ADA_RTS)/adalib
ADAINCLUDE = $(ADA_RTS)/adainclude ADAINCLUDE = $(ADA_RTS)/adainclude
PACKAGES = system s-stoele s-secsta a-except s-conca2 PACKAGES = system s-stoele s-secsta a-except s-conca2 s-arit64
body_exists := $(filter $1.adb,$(shell if [ -e $2/$1.adb ]; then echo $1.adb; fi)) body_exists := $(filter $1.adb,$(shell if [ -e $2/$1.adb ]; then echo $1.adb; fi))

View File

@ -13,12 +13,17 @@ extern "C" {
} }
/* Constraint Error */ /* Constraint Error */
void __gnat_rcheck_CE_Explicit_Raise(char *file, int line) void constraint_error(char *file, int line)
{ {
Genode::error("Constraint Error in ", Genode::Cstring(file), " at line ", line); Genode::error("Constraint Error in ", Genode::Cstring(file), " at line ", line);
throw Ada::Exception::Constraint_Error(); throw Ada::Exception::Constraint_Error();
} }
void __gnat_rcheck_CE_Explicit_Raise(char *file, int line)
{
constraint_error(file, line);
}
/* Storage Error */ /* Storage Error */
void __gnat_rcheck_SE_Explicit_Raise(char *file, int line) void __gnat_rcheck_SE_Explicit_Raise(char *file, int line)
{ {