diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2009-04-30 14:35:22 +0000 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2009-04-30 14:35:22 +0000 |
commit | 35debead51c672d94e09901096032aded316a45c (patch) | |
tree | b930499490b07e1c897cdfe8e6d50538aecc8f2b /gcc/ada/makeutl.adb | |
parent | df35c271df60646a09af5279506c76c676a83217 (diff) | |
download | gcc-35debead51c672d94e09901096032aded316a45c.zip gcc-35debead51c672d94e09901096032aded316a45c.tar.gz gcc-35debead51c672d94e09901096032aded316a45c.tar.bz2 |
Makefile.in (dce.o): Add $(EXCEPT_H).
* Makefile.in (dce.o): Add $(EXCEPT_H).
* dce.c: Include except.h and delete redundant vector definitions.
(deletable_insn_p): Return false for non-call insns that can throw
if DF is running.
From-SVN: r147002
Diffstat (limited to 'gcc/ada/makeutl.adb')
-rw-r--r-- | gcc/ada/makeutl.adb | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/gcc/ada/makeutl.adb b/gcc/ada/makeutl.adb index 50b9fe2..17c34ff 100644 --- a/gcc/ada/makeutl.adb +++ b/gcc/ada/makeutl.adb @@ -598,7 +598,8 @@ package body Makeutl is (Switch : in out String_Access; Parent : String; Including_L_Switch : Boolean := True; - Including_Non_Switch : Boolean := True) + Including_Non_Switch : Boolean := True; + Including_RTS : Boolean := False) is begin if Switch /= null then @@ -628,13 +629,20 @@ package body Makeutl is then Start := 4; + elsif Including_RTS + and then Sw'Length >= 7 + and then Sw (2 .. 6) = "-RTS=" + then + Start := 7; + else return; end if; -- Because relative path arguments to --RTS= may be relative -- to the search directory prefix, those relative path - -- arguments are not converted. + -- arguments are converted only when they include directory + -- information. if not Is_Absolute_Path (Sw (Start .. Sw'Last)) then if Parent'Length = 0 then @@ -643,6 +651,19 @@ package body Makeutl is & Sw & """) are not allowed"); + elsif Including_RTS then + for J in Start .. Sw'Last loop + if Sw (J) = Directory_Separator then + Switch := + new String' + (Sw (1 .. Start - 1) & + Parent & + Directory_Separator & + Sw (Start .. Sw'Last)); + return; + end if; + end loop; + else Switch := new String' |