• R/O
  • HTTP
  • SSH
  • HTTPS

List of commits

Tags
No Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

GCC with patches for OS216


RSS
Rev. Time Author
b2d961e releases/gcc-7 releases/gcc-7.5.0 2019-11-14 16:40:39 Richard Biener

Update ChangeLog and version files for release

From-SVN: r278197

320cafa 2019-11-14 09:16:05 GCC Administrator

Daily bump.

From-SVN: r278186

7fd21be 2019-11-13 09:16:13 GCC Administrator

Daily bump.

From-SVN: r278108

c3a75c1 2019-11-12 09:16:24 GCC Administrator

Daily bump.

From-SVN: r278071

026f079 2019-11-11 09:16:05 GCC Administrator

Daily bump.

From-SVN: r278029

b49af8c 2019-11-10 09:16:10 GCC Administrator

Daily bump.

From-SVN: r278010

1242ed1 2019-11-09 09:16:06 GCC Administrator

Daily bump.

From-SVN: r277996

9fed5e3 2019-11-08 09:16:04 GCC Administrator

Daily bump.

From-SVN: r277937

3b4cd0a 2019-11-07 09:16:07 GCC Administrator

Daily bump.

From-SVN: r277896

15667d0 2019-11-06 09:16:05 GCC Administrator

Daily bump.

From-SVN: r277867

0890b83 2019-11-05 09:16:06 GCC Administrator

Daily bump.

From-SVN: r277807

fae9fcb 2019-11-04 09:16:05 GCC Administrator

Daily bump.

From-SVN: r277761

649db62 2019-11-03 17:23:33 Iain Sandoe

[Darwin, testsuite] Fix PR 79274

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

558877b 2019-11-03 09:16:04 GCC Administrator

Daily bump.

From-SVN: r277746

334a72e 2019-11-02 21:27:29 Iain Sandoe

[testsuite] Require alias support for pr90760.

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

ee7037c 2019-11-02 09:16:05 GCC Administrator

Daily bump.

From-SVN: r277737

ff76f68 2019-11-02 05:52:21 Iain Sandoe

[Darwin, machopic] Back out part of PR71767 fix.

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

87b14bf 2019-11-02 05:47:48 Iain Sandoe

[Darwin] Fix Objective-C NeXT ABI version check diagnostics.

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

1830e27 2019-11-02 05:44:32 Iain Sandoe

[Darwin] Some TLC for older Darwin versions.

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

f8d58fb 2019-11-02 05:38:37 Iain Sandoe

[Darwin, PPC] Move the out of line register save/restore to an endfile.

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

092a2f2 2019-11-02 05:33:39 Iain Sandoe

[Darwin] The need for FDE symbols is dependent on linker used, not OS rev.

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

3713077 2019-11-02 05:30:26 Iain Sandoe

[Darwin] The need for picsym stubs is dependent on linker used, not OS rev.

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

f8689f6 2019-11-02 05:20:47 Iain Sandoe

[Darwin, PPC] Install the same headers as other sub-targets.

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

8cb8501 2019-11-02 05:11:12 Iain Sandoe

[Darwin, PPC] Allow the user to override the use of hard float in kexts.

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

bf5d24c 2019-11-02 05:05:17 Iain Sandoe

[Darwin, PPC] Handle GCC target pragma.

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

10f6583 2019-11-02 05:01:52 Iain Sandoe

[Darwin, PPC, testsuite] Exclude darwin from VSX, power8 and power9.

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

8ae6abb 2019-11-01 09:16:04 GCC Administrator

Daily bump.

From-SVN: r277700

88a7275 2019-10-31 09:16:04 GCC Administrator

Daily bump.

From-SVN: r277650

4a1c247 2019-10-30 09:16:36 GCC Administrator

Daily bump.

From-SVN: r277596

9b6d95b 2019-10-30 05:20:23 Iain Sandoe

[Darwin, PPC] Fix PR 65342.

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