public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
To: Iain Buclaw <ibuclaw@gdcproject.org>
Cc: gcc-patches@gcc.gnu.org
Subject: Re: [PATCH] libphobos: Allow building libphobos using Solaris/x86 assembler
Date: Thu, 07 Jan 2021 17:17:46 +0100	[thread overview]
Message-ID: <yddh7nsen6d.fsf@CeBiTec.Uni-Bielefeld.DE> (raw)
In-Reply-To: <1610035055.i2ssecfjha.astroid@galago.none> (Iain Buclaw's message of "Thu, 07 Jan 2021 17:11:04 +0100")

Hi Iain,

>> The Solaris assemblers don't support UTF-8 identifiers.  Unless gdc can
>> encode them in some way for toolchains like this (no idea if this is
>> worth the effort), it may be possible to guard the tests with the ucn
>> effective-target keyword.
>> 
>> Apart from that, it seems strange that the failing tests should only
>> show up as UNSUPPORTED.  I'd have expected the compilation to FAIL, but
>> IIRC the gdc testsuite has to ignore all output, so the test for excess
>> errors which would usually catch this is disabled effectively.
>
> Indeed, the testsuite is far too verbose.  Although many tests have a
> TEST_OUTPUT directive, converting them to a Dejagnu style is probably
> too much effort for the gain.
>
> Those tests can just be explicitly disabled, I'll look into that.

Great, thanks.

>> The last failure is different and due to how COMDAT group handling is
>> done with Solaris as:
>> 
>> +UNRESOLVED: gdc.test/runnable/test42.d compilation failed to produce
>> executable
>> +UNRESOLVED: gdc.test/runnable/test42.d -shared-libphobos compilation
>> failed to produce executable
>> 
>> which yields
>> 
>> Input string too long, limit 10240
>> 
>> The offending input lines are (stripped for brevity)
>> 
>> 	.section	.tdata._D6test42__T5Foo71VAyaa2623[...]
>> 	.group	_D6test42__T5Foo71VAyaa2623_68656c6c6f616[...]
>> 
>> The first line is 10597 chars, the second even 15869.
>> 
>
> Is there a max symbol length macro available internally?  Maybe could

Not that I'm aware of.  I believe D tests are the first time ever that I
ran into this Solaris/x86 as limit.  One might try to iteratively
determine the value at configure time if this is helpful.  No idea if
other non-gas assemblers are even worse in that apartment.  E.g. the
Solaris/SPARC one has a considerably higher limit...

> just compress symbols using MD5 if they exceed a certain length...

That's certainly an easy option.  OTOH if this is unlikely to occur in
real-life code, once could just xfail the test on Solaris/x86 with as...

	Rainer

-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University

  reply	other threads:[~2021-01-07 16:17 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-05 21:43 Iain Buclaw
2021-01-05 21:57 ` Rainer Orth
2021-01-06 13:57   ` Rainer Orth
2021-01-07 16:11     ` Iain Buclaw
2021-01-07 16:17       ` Rainer Orth [this message]
2021-01-07 17:48         ` Iain Buclaw
2021-01-11 16:46           ` Iain Buclaw
2021-01-12 14:54             ` Rainer Orth

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=yddh7nsen6d.fsf@CeBiTec.Uni-Bielefeld.DE \
    --to=ro@cebitec.uni-bielefeld.de \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=ibuclaw@gdcproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).