]>
Commit | Line | Data |
---|---|---|
08a1987a | 1 | This is an optimization hack which should only be present |
2 | in a sparc 32bit driver of the compiler compiled with | |
3 | host/target/build sparc64-redhat-linux --with-cpu=v7. | |
4 | As long long HOST_WIDE_INT slows things down, we can have in | |
5 | addition to the sparc64-*/3.2/{cc1,cc1plus} | |
6 | sparc-*/3.2/{cc1,cc1plus} binaries which are suitable for compiling | |
7 | -m32 code only, but use long HOST_WIDE_INT. | |
8 | ||
9 | --- gcc/gcc.c.jj 2003-05-15 18:06:04.000000000 -0400 | |
10 | +++ gcc/gcc.c 2003-05-20 10:31:15.000000000 -0400 | |
11 | @@ -3003,6 +3003,8 @@ process_command (argc, argv) | |
12 | int have_c = 0; | |
13 | int have_o = 0; | |
14 | int lang_n_infiles = 0; | |
15 | + int m64 = 0; | |
16 | + int used_B = 0; | |
17 | #ifdef MODIFY_TARGET_NAME | |
18 | int is_modify_target_name; | |
19 | int j; | |
20 | @@ -3493,6 +3495,7 @@ warranty; not even for MERCHANTABILITY o | |
21 | PREFIX_PRIORITY_B_OPT, 0, &warn_B, 0); | |
22 | add_prefix (&include_prefixes, concat (value, "include", NULL), | |
23 | NULL, PREFIX_PRIORITY_B_OPT, 0, NULL, 0); | |
24 | + used_B = 1; | |
25 | n_switches++; | |
26 | } | |
27 | break; | |
28 | @@ -3555,6 +3558,13 @@ warranty; not even for MERCHANTABILITY o | |
29 | #endif | |
30 | goto normal_switch; | |
31 | ||
32 | + /* HACK START */ | |
33 | + case 'm': | |
34 | + if (p[1] == '6' && p[2] == '4') | |
35 | + m64 = 1; | |
36 | + /* FALLTHROUGH */ | |
37 | + /* HACK END */ | |
38 | + | |
39 | default: | |
40 | normal_switch: | |
41 | ||
42 | @@ -3621,6 +3631,26 @@ warranty; not even for MERCHANTABILITY o | |
43 | /* Use 2 as fourth arg meaning try just the machine as a suffix, | |
44 | as well as trying the machine and the version. */ | |
45 | #ifndef OS2 | |
46 | + /* HACK START */ | |
47 | + if (!m64 && !used_B && !strncmp (spec_machine, "sparc64-", 8)) | |
48 | + { | |
49 | + const char *sparc32_exec_prefix = | |
50 | + concat (standard_exec_prefix, "sparc-", spec_machine + 8, | |
51 | + dir_separator_str, spec_version, dir_separator_str, NULL); | |
52 | + add_prefix (&exec_prefixes, sparc32_exec_prefix, "GCC", | |
53 | + PREFIX_PRIORITY_LAST, 0, warn_std_ptr, 0); | |
54 | + } | |
55 | + /* HACK END */ | |
56 | + /* HACK START */ | |
57 | + if (!m64 && !used_B && !strncmp (spec_machine, "ppc64-", 6)) | |
58 | + { | |
59 | + const char *ppc32_exec_prefix = | |
60 | + concat (standard_exec_prefix, "ppc-", spec_machine + 6, | |
61 | + dir_separator_str, spec_version, dir_separator_str, NULL); | |
62 | + add_prefix (&exec_prefixes, ppc32_exec_prefix, "GCC", | |
63 | + PREFIX_PRIORITY_LAST, 0, warn_std_ptr, 0); | |
64 | + } | |
65 | + /* HACK END */ | |
66 | add_prefix (&exec_prefixes, standard_exec_prefix, "GCC", | |
67 | PREFIX_PRIORITY_LAST, 1, warn_std_ptr, 0); | |
68 | add_prefix (&exec_prefixes, standard_exec_prefix, "BINUTILS", |