--- Comment #11 from hjl dot tools at gmail dot com 2009-01-28 03:39
---
Fixed.
--
hjl dot tools at gmail dot com changed:
What|Removed |Added
Status|UNCONFI
--- Comment #10 from hjl at gcc dot gnu dot org 2009-01-28 03:38 ---
Subject: Bug 38941
Author: hjl
Date: Wed Jan 28 03:38:41 2009
New Revision: 143719
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=143719
Log:
2009-01-27 H.J. Lu
PR target/38941
* doc/extend.
--- Comment #9 from hjl dot tools at gmail dot com 2009-01-24 01:32 ---
>From gcc doc:
---
Sometimes you need to make an `asm' operand be a specific register,
but there's no matching constraint letter for that register _by
itself_. To force the operand into that register, use a local
--- Comment #8 from hjl dot tools at gmail dot com 2009-01-24 00:08 ---
Reload can't deal with:
[...@gnu-6 reg-1]$ cat f.i
int
bar (int g)
{
register int x __asm__("ecx");
x = 8;
if ((1 << g) != x)
return 0;
return x;
}
[...@gnu-6 reg-1]$ /export/build/gnu/gcc-work
--- Comment #7 from vmakarov at redhat dot com 2009-01-23 15:58 ---
If it is a problem, it is not a problem of IRA. The usage of the old RA
results in the same abort. Neither the old RA, nor IRA assigns CX to pseudos.
CX is started to be used by reload, so I think it is reload respons
--- Comment #6 from hjl dot tools at gmail dot com 2009-01-23 05:45 ---
gcc.target/i386/pr20204.c is another example without asm statement.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38941
--- Comment #5 from hjl dot tools at gmail dot com 2009-01-23 05:16 ---
./gcc.target/i386/attr-returns_twice-1.c has no asm statements at all.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38941
--- Comment #4 from hjl dot tools at gmail dot com 2009-01-23 05:14 ---
(In reply to comment #3)
> Again still undefined because there is still inbetween the assignment
> and the inline-asm.
>
Where is this documented? There is
bash-3.2$ cat ./gcc.target/mips/asm-1.c
/* PR target/1
--- Comment #3 from pinskia at gmail dot com 2009-01-23 04:39 ---
Subject: Re: CX isn't preserved with shift
Sent from my iPhone
On Jan 22, 2009, at 8:34 PM, "hjl dot tools at gmail dot com"
wrote:
>
>
> --- Comment #2 from hjl dot tools at gmail dot com 2009-01-23
> 04:34
Sent from my iPhone
On Jan 22, 2009, at 8:34 PM, "hjl dot tools at gmail dot com" > wrote:
--- Comment #2 from hjl dot tools at gmail dot com 2009-01-23
04:34 ---
How about this one:
---
extern void abort (void);
void
foo (int x)
{
if (x != 8)
abort ();
}
void
bar (int g
--- Comment #2 from hjl dot tools at gmail dot com 2009-01-23 04:34 ---
How about this one:
---
extern void abort (void);
void
foo (int x)
{
if (x != 8)
abort ();
}
void
bar (int g)
{
register int x __asm__("ecx");
register int y __asm__("eax");
x = 5;
foo (1 <<
--- Comment #1 from pinskia at gmail dot com 2009-01-23 04:24 ---
Subject: Re: New: CX isn't preserved with shift
Sent from my iPhone
On Jan 22, 2009, at 5:54 PM, "hjl dot tools at gmail dot com"
wrote:
> On x86, CX is used for shift. If CX is used for a variable, it
> may not be
12 matches
Mail list logo