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