This project is mirrored from git://gcc.gnu.org/git/gcc.git.
Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
Last successful update .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
Last successful update .
- 14 Nov, 2019 2 commits
-
-
Richard Biener authored
From-SVN: r278197
-
GCC Administrator authored
From-SVN: r278186
-
- 13 Nov, 2019 1 commit
-
-
GCC Administrator authored
From-SVN: r278108
-
- 12 Nov, 2019 1 commit
-
-
GCC Administrator authored
From-SVN: r278071
-
- 11 Nov, 2019 1 commit
-
-
GCC Administrator authored
From-SVN: r278029
-
- 10 Nov, 2019 1 commit
-
-
GCC Administrator authored
From-SVN: r278010
-
- 09 Nov, 2019 1 commit
-
-
GCC Administrator authored
From-SVN: r277996
-
- 08 Nov, 2019 1 commit
-
-
GCC Administrator authored
From-SVN: r277937
-
- 07 Nov, 2019 1 commit
-
-
GCC Administrator authored
From-SVN: r277896
-
- 06 Nov, 2019 1 commit
-
-
GCC Administrator authored
From-SVN: r277867
-
- 05 Nov, 2019 1 commit
-
-
GCC Administrator authored
From-SVN: r277807
-
- 04 Nov, 2019 1 commit
-
-
GCC Administrator authored
From-SVN: r277761
-
- 03 Nov, 2019 2 commits
-
-
Iain Sandoe authored
The solution for initialising global TLS variables does not apply to platforms using emulated TLS. XFAIL the test for this on Darwin. 2019-11-03 Iain Sandoe <iain@sandoe.co.uk> PR c++/79274 * g++.dg/tls/pr77285-2.C: XFAIL test for Darwin. From-SVN: r277751
-
GCC Administrator authored
From-SVN: r277746
-
- 02 Nov, 2019 2 commits
-
-
Iain Sandoe authored
This test fails on Darwin because it requires alias support, so add the relevant dg-requires. gcc/testsuite/ 2019-11-02 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline 2019-06-13 Iain Sandoe <iain@sandoe.co.uk> * gcc.dg/pr90760.c: Require alias support. From-SVN: r277745
-
GCC Administrator authored
From-SVN: r277737
-
- 01 Nov, 2019 11 commits
-
-
Iain Sandoe authored
We applied a conservative, but fairly large, hammer to fix PR71767. However, ideally, we want minimise the number of symbols visible to ld64 and to match the cases emitted by clang (since that's what ld64 is expecting). Now we've improved the handling of indirections, we can make the indirection symbols local when they are in the regular non-lazy symbol pointers section. We will continue to make any indirections in the data section visible (since right now we have no way to track if a given symbol follows a weak global). This change makes no difference to handling of labels for constants (to be revised in a future patch). There's a mechanical change to a number of tests (allowing 'l' or 'L' as the indirection symbol prefix). gcc/ 2019-11-01 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline 2019-10-13 Iain Sandoe <iain@sandoe.co.uk> * config/darwin.c (machopic_indirection_name): Rework the function to emit linker-visible symbols only for indirections in the data section. Clean up the code and update comments. gcc/testsuite/ 2019-11-01 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline. 2019-10-13 Iain Sandoe <iain@sandoe.co.uk> * gcc.target/i386/indirect-thunk-1.c: Allow 'l' or 'L' in indirection label prefix, for Darwin. * gcc.target/i386/indirect-thunk-2.c: Likewise. * gcc.target/i386/indirect-thunk-3.c: Likewise. * gcc.target/i386/indirect-thunk-4.c: Likewise. * gcc.target/i386/indirect-thunk-attr-1.c: Likewise. * gcc.target/i386/indirect-thunk-attr-2.c: Likewise. * gcc.target/i386/indirect-thunk-attr-3.c: Likewise. * gcc.target/i386/indirect-thunk-attr-4.c: Likewise. * gcc.target/i386/indirect-thunk-attr-5.c: Likewise. * gcc.target/i386/indirect-thunk-attr-6.c: Likewise. * gcc.target/i386/indirect-thunk-extern-1.c: Likewise. * gcc.target/i386/indirect-thunk-extern-2.c: Likewise. * gcc.target/i386/indirect-thunk-extern-3.c: Likewise. * gcc.target/i386/indirect-thunk-extern-4.c: Likewise. * gcc.target/i386/indirect-thunk-inline-1.c: Likewise. * gcc.target/i386/indirect-thunk-inline-2.c: Likewise. * gcc.target/i386/indirect-thunk-inline-3.c: Likewise. * gcc.target/i386/indirect-thunk-inline-4.c: Likewise. * gcc.target/i386/pr32219-2.c: Likewise. * gcc.target/i386/pr32219-3.c: Likewise. * gcc.target/i386/pr32219-4.c: Likewise. * gcc.target/i386/pr32219-7.c: Likewise. * gcc.target/i386/pr32219-8.c: Likewise. * gcc.target/i386/ret-thunk-14.c: Likewise. * gcc.target/i386/ret-thunk-15.c: Likewise. * gcc.target/i386/ret-thunk-9.c: Likewise. From-SVN: r277727
-
Iain Sandoe authored
This fixes build errors when used with newer GCC and corrects a mistake in the checking of ABI versions. 276768 We were missing a check for the case that user's ABI was > 2 and the codegen was for 64 bit. 276635 Fix some format-related build warnings. This fixes two error messages to avoid punctuation and contracted negations. gcc/ 2019-11-01 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline 2019-10-09 Iain Sandoe <iain@sandoe.co.uk> * config/darwin.c (darwin_override_options): Make the check for Objective-C ABI version more specific for 64bit code. Backport from mainline 2019-10-06 Iain Sandoe <iain@sandoe.co.uk> * config/darwin.c (darwin_override_options): Adjust objective-c ABI version error messages to avoid punctuation and contracted negations. From-SVN: r277726
-
Iain Sandoe authored
The library handling and some of the options for creating the crts for the older PPC Darwin versions had bit-rotted somewhat. This adjusts the build criteria for the crts to avoid newer ld64 versions warnings about mismatches in build and object versions. Added to some of the comments that it's documented why the specs are as they are. gcc/ 2019-11-01 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline 2019-07-03 Iain Sandoe <iain@sandoe.co.uk> * config/darwin.h (REAL_LIBGCC_SPEC): Adjust for earlier Darwin. (STARTFILE_SPEC): Split crt3 into a separate spec. (DARWIN_EXTRA_SPECS): Add crt2 and crt3 spec. (DARWIN_CRT2_SPEC): New. (DARWIN_CRT3_SPEC): New. (MIN_LD64_OMIT_STUBS): Revise to 62.1. * config/rs6000/darwin.h (DARWIN_CRT2_SPEC): Revise conditions. (DARWIN_CRT3_SPEC): New. libgcc/ 2019-11-01 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline. 2019-07-03 Iain Sandoe <iain@sandoe.co.uk> * config.host (powerpc-*-darwin*,powerpc64-*-darwin*): Revise crt list. * config/rs6000/t-darwin: Build crt3_2 for older systems. Revise mmacosx-version-min for crts to run across all system versions. * config/rs6000/t-darwin64 (LIB2ADD): Remove. * config/t-darwin: Revise mmacosx-version-min for crts to run across system versions >= 10.4. From-SVN: r277725
-
Iain Sandoe authored
272660 We have been including this in libgcc, which means that we have to append -lgcc even when using shared libgcc. In preparation for revision of libgcc split this into an endfile. 272759 Correct whitespace in specs. gcc/ 2019-11-01 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline 2019-06-27 Iain Sandoe <iain@sandoe.co.uk> * config/rs6000/darwin.h (ENDFILE_SPEC): Correct whitespace in the spec. Backport from mainline 2019-06-25 Iain Sandoe <iain@sandoe.co.uk> * config/rs6000/darwin.h (ENDFILE_SPEC): New. libgcc/ 2019-11-01 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline. 2019-06-25 Iain Sandoe <iain@sandoe.co.uk> * config.host: Add libef_ppc.a to the extra files for powerpc-darwin. * config/rs6000/t-darwin: (PPC_ENDFILE_SRC, PPC_ENDFILE_OBJS): New. Build objects for the out of line save/restore register functions so that they can be used for any supported Darwin version. * config/t-darwin: Default the build Darwin version to Darwin8 (MacOS 10.4). From-SVN: r277724
-
Iain Sandoe authored
For very old toolchains, the compiler generated extra symbols that mark the start of each FDE. We no longer need this (since xcode 3 era) - so, for compatibility with newer linkers, omit this when it is not required. Since we have detection of the linker version, we can use that directly to determine if support is needed. gcc/ 2019-11-01 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline 2019-06-18 Iain Sandoe <iain@sandoe.co.uk> * config/darwin.c (darwin_emit_unwind_label): New default to false. (darwin_override_options): Set darwin_emit_unwind_label as needed. From-SVN: r277722
-
Iain Sandoe authored
272356 For very old toolchains, the compiler generated pic symbol stubs that provide the necessary indirections. We no longer need this (since xcode 3 era) and it's more efficient for the linker to make one stub when it knows a symbol is needed that for us to emit them speculatively in every object. Our current codegen is making the assumption that a specific OS version uses a specific linker version - and therefore the presence of support could be based on the target OS rev. Of course, that's way too simplistic (most likely bogus for cross-toolchains) and we want to make things explict. Since we have detection of the linker version, we can use that directly (A config test for support for stub-less linking might also be feasible but much more involved). Finally, should the user wish to generate code that caters for export to use in an environment with an older toolchain, the generation of stubs can be forced from the command line. In addition to the points above, branch islanding and a long branch opt for PowerPC Darwin has become conflated with the emission of these stubs. 274379 There is no need to distinguish PIC/non-PIC symbol stubs. So we can use a single flag for both. gcc/ 2019-11-01 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline 2019-08-13 Iain Sandoe <iain@sandoe.co.uk> * config/darwin.c (machopic_indirect_call_target): Rename symbol stub flag. (darwin_override_options): Likewise. * config/darwin.h: Likewise. * config/darwin.opt: Likewise. * config/i386/i386.c (output_pic_addr_const): Likewise. * config/rs6000/darwin.h: Likewise. * config/rs6000/rs6000.c (rs6000_call_darwin_1): Likewise. * config/i386/darwin.h (TARGET_MACHO_PICSYM_STUBS): Rename to ... ... this TARGET_MACHO_SYMBOL_STUBS. (FUNCTION_PROFILER):Likewise. * config/i386/i386.h: Likewise. Backport from mainline 2019-06-16 Iain Sandoe <iain@sandoe.co.uk> * config/darwin.c (machopic_indirect_call_target): Use renamed darwin_picsymbol_stubs to decide on output. (darwin_override_options): Handle darwin_picsymbol_stubs. * config/darwin.h (MIN_LD64_OMIT_STUBS): New. (LD64_VERSION): Revise default. * config/darwin.opt: (mpic-symbol-stubs): New option. (darwin_picsymbol_stubs): New variable. * config/i386/darwin.h (TARGET_MACHO_BRANCH_ISLANDS): rename to TARGET_MACHO_PICSYM_STUBS. * config/i386/i386.c (output_pic_addr_const): Likewise. * config/i386/i386.h Likewise. * config/rs6000/darwin.h: Likewise. * config/rs6000/rs6000.c (rs6000_call_darwin_1): Use renamed darwin_picsymbol_stubs. gcc/testsuite/ 2019-11-01 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline. 2019-08-13 Iain Sandoe <iain@sandoe.co.uk> * obj-c++.dg/stubify-1.mm: Rename symbol stub option. * obj-c++.dg/stubify-2.mm: Likewise. * objc.dg/stubify-1.m: Likewise. * objc.dg/stubify-2.m: Likewise. From-SVN: r277721
-
Iain Sandoe authored
This is primarily in order to improve testsuite coverage, we might elect to prune the list at some point. gcc/ 2019-11-01 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline 2019-06-28 Iain Sandoe <iain@sandoe.co.uk> * config.gcc (powerpc-*-darwin*, powerpc64-*-darwin*): Remove override on extra_headers. From-SVN: r277720
-
Iain Sandoe authored
The default for the kernel is soft-float, however a user writing a kernel extension might want to make use of hard float. This aligns GCC with the system tools and makes ' -mkernel -mhard-float ' work as expected. gcc/ 2019-11-01 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline 2019-06-27 Iain Sandoe <iain@sandoe.co.uk> * config/rs6000/rs6000.c (darwin_rs6000_override_options): Honour user-specified float mode choice for kernel mode code. From-SVN: r277718
-
Iain Sandoe authored
For compatibility with other members of the port. Note, that we do not handle the longcall attribute, since longcall is not required/used on current Darwin. gcc/ 2019-11-01 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline 2019-06-23 Iain Sandoe <iain@sandoe.co.uk> * config/rs6000/darwin.h: Handle GCC target pragma. From-SVN: r277717
-
Iain Sandoe authored
If we build Darwin with a modern assembler, then it might well recognise insns that cannot be used on current Darwin systems. The patch augments the tests for feature support for VSX, power8 and power9 to exclude Darwin even if the assembler can handle the instructions. gcc/testsuite/ 2019-11-01 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline. 2019-05-15 Iain Sandoe <iain@sandoe.co.uk> * lib/target-supports.exp (check_effective_target_powerpc_p8vector_ok): No support for Darwin. (check_effective_target_powerpc_p9vector_ok): Likewise. (check_effective_target_powerpc_float128_sw_ok): Likewise. (check_effective_target_powerpc_float128_hw_ok): Likewise. (check_effective_target_powerpc_vsx_ok): Likewise. * gcc.target/powerpc/bfp/bfp.exp: Don't try to run this for Darwin. * gcc.target/powerpc/dfp/dfp.exp: Likewise. From-SVN: r277716
-
GCC Administrator authored
From-SVN: r277700
-
- 31 Oct, 2019 1 commit
-
-
GCC Administrator authored
From-SVN: r277650
-
- 30 Oct, 2019 1 commit
-
-
GCC Administrator authored
From-SVN: r277596
-
- 29 Oct, 2019 9 commits
-
-
Iain Sandoe authored
The current Darwin load/store lo_sum patterns have neither predicate nor constraint. This means that most parts of the backend, which rely on recog() to validate the rtx, can produce invalid combinations/selections. For 32bit cases this isn't a problem since we can load/store to unaligned addresses using D-mode insns. Conversely, for 64bit instructions that use DS mode, this can manifest as assemble errors (for an assembler that checks the LO14 relocations), or as crashes caused by wrong offsets (or worse, wrong content for the two LSBs). What we want to check for Y on Darwin is: - that the alignment of the Symbols' target is sufficient for DS mode - that the offset is suitable for DS mode. (while looking through the Mach-O PIC unspecs). So, the patch removes the Darwin-specific lo_sum patterns (we begin using the movdi_internal64 patterns). We also we need to extend the handling of the mem_operand_gpr constraint to allow looking through Mach-O PIC UNSPECs in the lo_sum cases. 2019-10-29 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline 2019-10-17 Iain Sandoe <iain@sandoe.co.uk> PR target/65342 * config/rs6000/darwin.md (movdi_low, movsi_low_st): Delete. (movdi_low_st): Delete. * config/rs6000/rs6000.c (darwin_rs6000_legitimate_lo_sum_const_p): New. (mem_operand_gpr): Validate Mach-O LO_SUM cases separately. * config/rs6000/rs6000.md (movsi_low): Delete. From-SVN: r277590 -
Iain Sandoe authored
When we're using the LLVM-based assembler (the default on modern Darwin) the ordering of stubs and non-lazy symbol pointers is important. Interleaving the output (current GCC behaviour) leads to crashes which prevents us from building code with symbol stubs. To resolve this, we order the output of stubs and symbol indirections: 1. Any indirections in the data section 2. Symbol stubs. 3. Non-lazy symbol pointers. At present, we still emit LTO sections after these. 2019-10-29 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline 2019-10-12 Iain Sandoe <iain@sandoe.co.uk> PR target/67183 * config/darwin.c (machopic_indirection): New field to flag non-lazy-symbol-pointers in the data section. (machopic_indirection_name): Compute if an indirection should appear in the data section. (machopic_output_data_section_indirection): New callback split from machopic_output_indirection. (machopic_output_stub_indirection): Likewise. (machopic_output_indirection): Retain the code for non-lazy symbol pointers in their regular section. (machopic_finish): Use the new callbacks to order the indirection output. From-SVN: r277587
-
Iain Sandoe authored
This is a combined set of 5 patches that allows us to fix PRs 65342 and 67183. 276924 Make machopic_finish() static. 276767 Set a SYMBOL flag for indirections. We are able to treat these specially where needed in legitimate address tests (specifically, they are guaranteed to be pointer-aligned). 276708 Compute and cache indirection rules. This caches a check for the requirement to indirect a symbol in the Darwin ABI, and uses it where needed. We also ensure that we place the indirection pointers into the non-lazy symbol pointers section. Other placements have occurred with various platform toolchains - but these seem to have been unintentional so we match current platform toolchains. 276675 Consider visibility in indirections. For weak, hidden vars the indirection should just be as normal, that is that the indirections for such symbols should appear in the non-lazy symbol pointers table, not in the .data section. 276674 Initial tidy of Mach-O symbol handling. We want to improve the detection and caching of symbol-properties so that (a) we can make the compiler's output match the platform norms (b) we can improve efficiency by checking flags instead of inspecting strings. (c) The fix for PR71767 was a largish hammer and we want to reduce the number of symbols that are made linker- visible. This first patch is largely typographical changes with no functional difference intended: - Tries to ensure that there's no overlap between the symbols used in the Mach-O case and those declared in the i386 or rs6000 port trees. - Some improvement to comments. - Makes the naming of the symbol flags consistent with other uses. - Provides a predicate macro for each use. 2019-10-29 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline 2019-10-12 Iain Sandoe <iain@sandoe.co.uk> * config/darwin-protos.h (machopic_finish): Delete. * config/darwin.c (machopic_finish): Make static. Backport from mainline 2019-10-09 Iain Sandoe <iain@sandoe.co.uk> * config/darwin.c (machopic_indirect_data_reference): Set flag to indicate that the new symbol is an indirection. (machopic_indirect_call_target): Likewise. * config/darwin.h (MACHO_SYMBOL_FLAG_INDIRECTION): New. (MACHO_SYMBOL_INDIRECTION_P): New. (MACHO_SYMBOL_FLAG_STATIC): Adjust bit number. Backport from mainline 2019-10-08 Iain Sandoe <iain@sandoe.co.uk> * config/darwin.c (machopic_indirect_data_reference): Check for required indirections before making direct access to defined values. (machopic_output_indirection): Place the indirected pointes for required indirections into the non-lazy symbol pointers section. (darwin_encode_section_info): * config/darwin.h (MACHO_SYMBOL_FLAG_MUST_INDIRECT): New. (MACHO_SYMBOL_MUST_INDIRECT_P): New. Backport from mainline 2019-10-07 Iain Sandoe <iain@sandoe.co.uk> * config/darwin.c (machopic_output_indirection): Don't put hidden symbol indirections into the .data section, use the non-lazy symbol pointers section as normal. (darwin_encode_section_info): Record if a symbol is hidden. * config/darwin.h (MACHO_SYMBOL_FLAG_HIDDEN_VIS): New. (MACHO_SYMBOL_HIDDEN_VIS_P): New. Backport from mainline 2019-10-07 Iain Sandoe <iain@sandoe.co.uk> * config/darwin.c (machopic_symbol_defined_p): Use symbol flag predicates instead of accessing bits directly. (machopic_indirect_call_target): Likewise. (machopic_output_indirection): Likewise. (darwin_encode_section_info): Improve description. Use renamed symbol flags. Use predicate macros for variables and functions. * config/darwin.h: Rename MACHO_SYMBOL_VARIABLE to MACHO_SYMBOL_FLAG_VARIABLE. Rename MACHO_SYMBOL_DEFINED to MACHO_SYMBOL_FLAG_DEFINED. Rename MACHO_SYMBOL_STATIC to MACHO_SYMBOL_FLAG_STATIC. (MACHO_SYMBOL_VARIABLE_P): New. (MACHO_SYMBOL_DEFINED_P):New. (MACHO_SYMBOL_STATIC_P): New. * config/i386/darwin.h (MACHO_SYMBOL_FLAG_VARIABLE): Delete. (SYMBOL_FLAG_SUBT_DEP): New. * config/rs6000/darwin.h (SYMBOL_FLAG_SUBT_DEP): New. From-SVN: r277586
-
Iain Sandoe authored
As fallout from 19315, which is not fixed on this branch, the presence of an unused static variable causes a 'promotion' of that to extern. This produces wrong code on Darwin when Mach-O PIC is in use (m32 X86 and all PPC). So skip this unconditionally, as noted in the PR trail, the usefulness of the test is questionable anyway. gcc/testsuite/ 2019-10-29 Iain Sandoe <iain@sandoe.co.uk> * gcc.c-torture/compile/pr72802.c: Skip for Darwin. From-SVN: r277585
-
Iain Sandoe authored
Darwin's linker doesn't like text section relocations (they require special enabling). The Fortran FE, at least, seems to generate cases where the initialiser for a pointer constant can need a relocation. We can handle this by special-casing SECCAT_RODATA when the relocation is present by placing the constant in the .const_data section. 2019-10-29 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline 2019-10-05 Iain Sandoe <iain@sandoe.co.uk> PR target/59888 * config/darwin.c (darwin_rodata_section): Add relocation flag, choose const_data section for constants with relocations. (machopic_select_section): Pass relocation flag to darwin_rodata_section (). From-SVN: r277584
-
Iain Sandoe authored
Some changes were missed here in the transition to LRA. The Darwin archs are all using LRA now, testing for reload is not correct. 2019-10-18 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline 2019-09-21 Iain Sandoe <iain@sandoe.co.uk> * config/darwin.c (machopic_legitimize_pic_address): Check for lra, rather than reload. From-SVN: r277583
-
Iain Sandoe authored
For compatibility with xcrun and the behaviour of the clang driver, make use of the setting of the SDKROOT environment variable when it is available. This applies to both finding headers and libraries (i.e. it is also passed to ld64). Priority: 1. User's command-line specified --sysroot= or -isysroot. 2. The SDKROOT variable when set, and validated. 3. Any sysroot provided by --with-sysroot= configuration parameter. SDKROOT is checked thus: 1. Presence. 2. That it starts with / (i.e. 'absolute'). 3. That it is not / only (since that's the default). 4. That it is readable by the process executing the driver. This is pretty much the same rule set as used by the clang driver. NOTE: (3) might turn out to be overly restrictive in the case that we have configured with --with-sysroot= and then we want to run on a system with an installation of the headers/libraries in /. We can revisit this if that turns out to be an important use-case. So one can do: xcrun --sdk macosx /path/to/gcc .... and that provides the SDK path as the sysroot to GCC as expected. CAVEAT: An unfortunate effect of the fact that gcc (and g++) are executables in the Xcode installation, which are found ahead of any such named in the $PATH PATH=/path/to/gcc/install:$PATH xcrun --sdk macosx gcc .... does *not* work, instead that executes the clang from the xcode/commmand line tools installation. PATH=/path/to/gcc/install:$PATH xcrun --sdk macosx x64_64-apple-darwinXX-gcc ... does work as expected, however. 2019-10-29 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline 2019-10-03 Iain Sandoe <iain@sandoe.co.uk> PR target/87243 * config/darwin-driver.c (maybe_get_sysroot_from_sdkroot): New. (darwin_driver_init): Use the sysroot provided by SDKROOT when that is available and the user has not set one on the command line. From-SVN: r277582
-
Iain Sandoe authored
pie, no-pie and rdynamic are driver options, we can process them in the relevant place and drop them once dealt with. There's no need to generate a new header to process the no_compact_unwind which is applied on the basis of the target system. Support for the -pie, -no_pie and -no_compact_unwind options should ideally be checked at configure time, however the status quo is to assert that linkers capable of targeting the relevant systems support these options (i.e. we trust that the user doesn't attempt to configure inappropriately). TODO: check the availability of the linker opts in configure rather than trusting to the user. This will fix the fail of pie-7.c, which is a result of failing to handle the no-pie driver option. 2019-10-29 Iain Sandoe <iain@sandoe.co.uk> Backport from mainline 2019-07-03 Iain Sandoe <iain@sandoe.co.uk> * config/darwin.h (DRIVER_SELF_SPECS): Remove the linker cases. (RDYNAMIC): Rename to, DARWIN_RDYNAMIC. (DARWIN_PIE_SPEC, DARWIN_NOPIE_SPEC): Adjust to remove the Xlinker clauses. (LINK_COMMAND_SPEC_A): Add DARWIN_RDYNAMIC, DARWIN_PIE_SPEC and DARWIN_NOPIE_SPEC. Backport from mainline 2019-06-19 Iain Sandoe <iain@sandoe.co.uk> * config/darwin.h (DRIVER_SELF_SPECS): Add RDYNAMIC, DARWIN_PIE_SPEC and DARWIN_NOPIE_SPEC. (RDYNAMIC): New, modified from DARWIN_EXPORT_DYNAMIC. (DARWIN_PIE_SPEC): Collate from darwin.h and darwin9.h. (DARWIN_NOPIE_SPEC): Collate from darwin10.h. (DARWIN_NOCOMPACT_UNWIND): New from darwin10.h (DARWIN_EXPORT_DYNAMIC): Delete. * config/darwin10.h (LINK_GCC_C_SEQUENCE_SPEC): Move no_compact_unwind and pie options processing to darwin.h. * config/darwin9.h (DARWIN_PIE_SPEC): Move pie processing to darwin.h From-SVN: r277581
-
GCC Administrator authored
From-SVN: r277547
-
- 28 Oct, 2019 1 commit
-
-
GCC Administrator authored
From-SVN: r277496
-
- 27 Oct, 2019 1 commit
-
-
Paul Thomas authored
2019-10-27 Paul Thomas <pault@gcc.gnu.org> Backport from mainline PR fortran/86248 * resolve.c (flag_fn_result_spec): Correct a typo before the function declaration. * trans-decl.c (gfc_sym_identifier): Boost the length of 'name' to allow for all variants. Simplify the code by using a pointer to the symbol's proc_name and taking the return out of each of the conditional branches. Allow symbols with fn_result_spec set that do not come from a procedure namespace and have a module name to go through the non-fn_result_spec branch. 2019-10-27 Paul Thomas <pault@gcc.gnu.org> Backport from mainline PR fortran/86248 * gfortran.dg/char_result_19.f90 : New test. * gfortran.dg/char_result_mod_19.f90 : Module for the new test. From-SVN: r277488
-