diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2010-06-14 10:06:34 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2010-06-14 10:06:34 +0200 |
commit | 71158d7e6d3ce21ac0ef3b96a516073870178631 (patch) | |
tree | c63c0484219a240c529048c454d5cc7adf6dbe53 /gcc | |
parent | ce71b410ae578bb9038c534989bb9324ff299c6b (diff) | |
download | gcc-71158d7e6d3ce21ac0ef3b96a516073870178631.zip gcc-71158d7e6d3ce21ac0ef3b96a516073870178631.tar.gz gcc-71158d7e6d3ce21ac0ef3b96a516073870178631.tar.bz2 |
[multiple changes]
2010-06-14 Pascal Obry <obry@adacore.com>
* prj-proc.adb: Fix copy of object directory for extending projects.
2010-06-14 Jose Ruiz <ruiz@adacore.com>
* init.c (__gnat_alternate_stack): Define this space for PowerPC linux
(__gnat_install_handler, PowerPC linux): Activate the alternative
signal stack.
From-SVN: r160708
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ada/ChangeLog | 10 | ||||
-rw-r--r-- | gcc/ada/init.c | 6 | ||||
-rw-r--r-- | gcc/ada/prj-proc.adb | 6 |
3 files changed, 16 insertions, 6 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 2de22a1..fb03ead 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,13 @@ +2010-06-14 Pascal Obry <obry@adacore.com> + + * prj-proc.adb: Fix copy of object directory for extending projects. + +2010-06-14 Jose Ruiz <ruiz@adacore.com> + + * init.c (__gnat_alternate_stack): Define this space for PowerPC linux + (__gnat_install_handler, PowerPC linux): Activate the alternative + signal stack. + 2010-06-13 Gerald Pfeifer <gerald@pfeifer.com> * gnat_rm.texi: Move to GFDL version 1.3. diff --git a/gcc/ada/init.c b/gcc/ada/init.c index 28498c4..551bdf9 100644 --- a/gcc/ada/init.c +++ b/gcc/ada/init.c @@ -706,7 +706,7 @@ __gnat_error_handler (int sig, Raise_From_Signal_Handler (exception, msg); } -#if defined (i386) || defined (__x86_64__) +#if defined (i386) || defined (__x86_64__) || defined (__powerpc__) /* This must be in keeping with System.OS_Interface.Alternate_Stack_Size. */ char __gnat_alternate_stack[16 * 1024]; /* 2 * SIGSTKSZ */ #endif @@ -747,7 +747,7 @@ __gnat_install_handler (void) handled properly, avoiding a SEGV generation from stack usage by the handler itself. */ -#if defined (i386) || defined (__x86_64__) +#if defined (i386) || defined (__x86_64__) || defined (__powerpc__) stack_t stack; stack.ss_sp = __gnat_alternate_stack; stack.ss_size = sizeof (__gnat_alternate_stack); @@ -768,7 +768,7 @@ __gnat_install_handler (void) sigaction (SIGILL, &act, NULL); if (__gnat_get_interrupt_state (SIGBUS) != 's') sigaction (SIGBUS, &act, NULL); -#if defined (i386) || defined (__x86_64__) +#if defined (i386) || defined (__x86_64__) || defined (__powerpc__) act.sa_flags |= SA_ONSTACK; #endif if (__gnat_get_interrupt_state (SIGSEGV) != 's') diff --git a/gcc/ada/prj-proc.adb b/gcc/ada/prj-proc.adb index 4984152..1120d5b 100644 --- a/gcc/ada/prj-proc.adb +++ b/gcc/ada/prj-proc.adb @@ -2274,13 +2274,13 @@ package body Prj.Proc is Is_Extending_All (From_Project_Node, From_Project_Node_Tree) then declare - Object_Dir : constant Path_Name_Type := - Project.Object_Directory.Name; + Object_Dir : constant Path_Information := + Project.Object_Directory; begin Prj := In_Tree.Projects; while Prj /= null loop if Prj.Project.Virtual then - Prj.Project.Object_Directory.Name := Object_Dir; + Prj.Project.Object_Directory := Object_Dir; end if; Prj := Prj.Next; end loop; |