[Bug testsuite/44518] [4.5/4.6 regression] objc++ encode-2.mm and encode-3.mm fail on several platforms

iains at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Sun Jun 13 17:20:00 GMT 2010



------- Comment #9 from iains at gcc dot gnu dot org  2010-06-13 17:20 -------
(In reply to comment #8)
> On ARM encode-2.mm fails in part for the same "plain char mangles differently"
> reason as on powerpc64, but also due to a backend oddity.  Here's how the
> string is output in the assembly file on ARM:
> 
>         .ascii  "{?={Vec<double>=ddi}{Vec<float>=ffi}fd{Vec<char>=CC"
>         .ascii  "i}i}\000"
> 
> For some reason the ARM backend breaks not very long string literals into
> chunks.  That's ok in principle because the data is correct in the object file,
> but it means that testsuite "scan-assembler" operations become unreliable. 
> Ideally the test should scan the object file for the string instead, but there
> doesn't seem to be a way to do that.
> 
> It seems gcc on i686 will also break up long string literals, but it allows for
> much much longer strings before doing that.

I can put a target-specific scanasm (once I know what to scan for).  They look
a little unwieldy - but they work.

Just having a go at making some cross-tools - at least that's a start for asm
syntax issues.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44518



More information about the Gcc-bugs mailing list