aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBernhard Schommer <bernhardschommer@gmail.com>2015-11-20 11:03:37 +0100
committerBernhard Schommer <bernhardschommer@gmail.com>2015-11-20 11:03:37 +0100
commitb9280baa78fe99bea7c392214e6af6f3af45e5ed (patch)
tree3ec268aa4d3d5641609efef0eb5899107aef8dc8
parentcf417332491f1c2a738705d4f1d874e4edd4d636 (diff)
downloadcompcert-kvx-b9280baa78fe99bea7c392214e6af6f3af45e5ed.tar.gz
compcert-kvx-b9280baa78fe99bea7c392214e6af6f3af45e5ed.zip
Separate assembler options for the diab backend.
The diab backend calls the assembler directly and does not call the compiler like for the gcc based backends. Fix 17668.
-rw-r--r--driver/Driver.ml5
1 files changed, 4 insertions, 1 deletions
diff --git a/driver/Driver.ml b/driver/Driver.ml
index a8f762fd..6d961c64 100644
--- a/driver/Driver.ml
+++ b/driver/Driver.ml
@@ -575,7 +575,10 @@ let cmdline_actions =
Exact "-mthumb", Set option_mthumb;
Exact "-marm", Unset option_mthumb;
(* Assembling options *)
- Prefix "-Wa,", Self (fun s -> assembler_options := s :: !assembler_options);
+ Prefix "-Wa,", Self (fun s -> if Configuration.system = "diab" then
+ assembler_options := List.rev_append (explode_comma_option s) !assembler_options
+ else
+ assembler_options := s :: !assembler_options);
(* Linking options *)
Prefix "-l", Self push_linker_arg;
Prefix "-L", Self push_linker_arg;