[PATCH] configury : Fix LEB128 support for non-GNU assemblers.
Rainer Orth
ro@CeBiTec.Uni-Bielefeld.DE
Thu Nov 26 13:08:31 GMT 2020
Hi Iain,
>> The ports I know of that can benefit from a change here are:
> [...]
>> Solaris (bootstrapped and tests running on GCC211, but maybe Rainer would
>> want wider checks).
>
> I've just manually tried the augmented test on Solaris 10-11.4, SPARC
> and x86. While the Solaris/SPARC assembler handles it just fine, the
> x86 one chokes in a known way:
>
> Assembler:
> "/homes/ro/leb128.s", line 2 : Syntax error
> Near line: " .uleb128 L2 - L1"
>
>> I guess we could exclude specific ports that don’t want to use leb128 with
>> a target elif in the configuration.
>
> I'll include the patch in tonight's Solaris bootstraps for good measure,
> but it seems fine to me as is.
unfortunately, Solaris/SPARC results are miserable:
* About 1600 Go tests FAIL, spread across go.*, libgo, and gotools, all
in the same way, it seems:
+FAIL: go.go-torture/execute/array-1.go execution, -O0
fatal error: DWARF underflow in .debug_line at 3266879
goroutine 1 [running, locked to thread]:
fatal error: DWARF underflow in .debug_line at 3266879
panic during panic
goroutine 1 [running, locked to thread]:
fatal error: DWARF underflow in .debug_line at 3266879
stack trace unavailable
* On top of that, I get about 80 libstdc++ failures, again all of the
same kind:
+FAIL: libstdc++-prettyprinters/80276.cc whatis p4
type = std::unique_ptr<std::vector<std::unique_ptr<std::list<std::basic_string<char, std::char_traits<char>, std::allocator<char> >>[]>>[99]>
got: type = std::unique_ptr<std::vector<std::unique_ptr<std::list<std::basic_string<char, std::char_traits<char>, std::allocator<char> >>[]>>[99]>
which is confusing because the the found and expected types are
identical.
All this happens for both 32 and 64-bit tests.
To ascertain that this is really the leb128 patch, I've reverted it in
my tree and reran the bootstrap: all those failures are gone.
So without further investigation, we cannot use the leb128 directives
with Solaris/SPARC as.
Rainer
--
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University
More information about the Gcc-patches
mailing list