This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Patch ppc/darwin] fix vec unwinding part 1.


On 11/29/2011 03:02 PM, Iain Sandoe wrote:
The following fails:

FAIL: g++.dg/eh/simd-3.C -std=gnu++98 execution test
FAIL: g++.dg/eh/simd-3.C -std=gnu++11 execution test
FAIL: g++.dg/eh/simd-4.C -std=gnu++98 execution test
FAIL: g++.dg/eh/simd-4.C -std=gnu++11 execution test

are the tip of an "unwinding doesn't work with vectors" iceberg ...

and is caused by the unwinder having the wrong size for vec registers
- which, is caused by the unwinder being built with altivec disabled
- which is caused by the unwinder being built with
-mmacosx-version-min=10.4 forced on.

This strategy was (part of a) solution for the situation that system
libraries might be installed on either G4 or G3 hardware.

A (low priority) TODO is to provide an updated solution to that
desideratum - low priority since it affects a vanishingly small number
of potential Users.

The fix for the fails (and to make unwinding with vectors work on
Darwin9) is to build the unwinder 'native'.

(as part of the TODO above - we also need to figure a way to get the
register sizes right for Darwin 8).

OK for trunk?
Iain

libgcc:

* config/rs6000/t-darwin (DARWIN_EXTRA_CRT_BUILD_CFLAGS): Remove
-mmacosx-version-min=10.4.
(HOST_LIBGCC2_CFLAGS): Likewise.
(LIB2ADD): Correct whitespace.
(LIB2ADD_ST): Add comment.



Looks good.


Paolo


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]