GCC with patches for OS216
Revision | 0fa420a2d29e761371cf1a9b0807a5e967058f69 (tree) |
---|---|
Time | 2020-05-08 06:20:03 |
Author | Giuliano Belinassi <giuliano.belinassi@usp....> |
Commiter | Giuliano Belinassi |
Do not call append_arg_storer if -S is provided
The flag -fsplit-outputs= should not be appended to cc1 if -S is
provided, as there is no easy way to do parallelism here.
gcc/ChangeLog
2020-05-07 Giuliano Belinassi <giuliano.belinassi@usp.br>
* gcc.c (execute): Don't call append_arg_storer if -S is provided.
(have_S): New variable.
@@ -1,5 +1,10 @@ | ||
1 | 1 | 2020-05-07 Giuliano Belinassi <giuliano.belinassi@usp.br> |
2 | 2 | |
3 | + * gcc.c (execute): Don't call append_arg_storer if -S is provided. | |
4 | + (have_S): New variable. | |
5 | + | |
6 | +2020-05-07 Giuliano Belinassi <giuliano.belinassi@usp.br> | |
7 | + | |
3 | 8 | * common.opt (fsplit-output=): New option. |
4 | 9 | * gcc.c (execute): Call append_split_outputs. |
5 | 10 | (is_compiler): New function. |
@@ -1955,6 +1955,9 @@ static int have_o = 0; | ||
1955 | 1955 | /* Was the option -E passed. */ |
1956 | 1956 | static int have_E = 0; |
1957 | 1957 | |
1958 | +/* Was the option -S passes. */ | |
1959 | +static int have_S = 0; | |
1960 | + | |
1958 | 1961 | /* Pointer to output file name passed in with -o. */ |
1959 | 1962 | static const char *output_file = 0; |
1960 | 1963 |
@@ -3326,7 +3329,8 @@ execute (void) | ||
3326 | 3329 | } |
3327 | 3330 | #endif |
3328 | 3331 | |
3329 | - append_split_outputs (&extra_args, commands, n_commands); | |
3332 | + if (!have_S) | |
3333 | + append_split_outputs (&extra_args, commands, n_commands); | |
3330 | 3334 | |
3331 | 3335 | /* Run each piped subprocess. */ |
3332 | 3336 |
@@ -4688,6 +4692,9 @@ process_command (unsigned int decoded_options_count, | ||
4688 | 4692 | switch (decoded_options[j].opt_index) |
4689 | 4693 | { |
4690 | 4694 | case OPT_S: |
4695 | + have_S = 1; | |
4696 | + have_c = 1; | |
4697 | + break; | |
4691 | 4698 | case OPT_c: |
4692 | 4699 | case OPT_E: |
4693 | 4700 | have_c = 1; |