On Wed, Aug 7, 2013 at 10:34 AM, Nathan Sidwell wrote:
> Having poked further, I find this in the testsuite:
>
> pr11001-strlen-2.c
> --begin
> register int regvar asm("%eax");
>
> char *
> do_copy (char *str)
> {
> return malloc (strlen (str) + 1);
> }
> --end
>
> Is that even meaningful? The
Having poked further, I find this in the testsuite:
pr11001-strlen-2.c
--begin
register int regvar asm("%eax");
char *
do_copy (char *str)
{
return malloc (strlen (str) + 1);
}
--end
Is that even meaningful? The doc's for a global reg var say:
'Choose a register that is normally saved and re
> The usual x86 ports avoid this, because their must_return_in_mem hooks DTRT
> already and we never fall into the default case.
So why not do the same for i686-elf?
> I am very surprised this hasn't bitten someone before -- I presume this
> never worked with i686-elf. It is possible this'll cha
In poking at another set of fails encountered with an i686-elf toolchain
(http://gcc.gnu.org/ml/gcc/2013-08/msg00081.html), I find that complex double
returns and PIC do not play together.
Libgcc's __muldc3 was attempting to return the value in registers, whereas every
caller expected it to be