Hello,
Here is a question about porting gcc. After I modified machine.md and
other backend files, I can make cc1 and xgcc now. But libgcc2.o still
failed. I'd like to know does we must make libgcc2.o since the target
machine don't have float registers and 64bit registers.
Thanks a lot.
Eric
hi,
Would you tell me which I should select to port for the new target?
The new target is like mips-elf. But I was told that glibc doesn't
support mips-elf well. Is it right?
Thanks for your help.
Eric
Thanks for your suggestion.
I think I need to port glibc. Because the new board is going to run
linux kernel. But I'm still not sure if glibc will support the new
target well. Thanks.
Eric
>If you are running the Linux kernel, then your target is not mips-elf,
>but rather mips-linux-gnu. For that target, glibc or uclibc is
>appropriate.
Exactly to say, the target is neither mips-elf nor mips-linux-gnu. I just
use mips-elf as the start. It's a new target with little endian and own
> For a port then yes *-elf is easier to start, especially if you're
> planning on going for an elf based operating system.
>
> What about the mips port made you decide that you wanted to use that
> as a guideline?
>
> -eric
Firstly, there're some similar between them. Secondly, we're some fami
Hello,
Can anyone give me some suggestions about floating point implemention.
My new target doesn't have floating point register. But must I implement
the floating point operantion? Libgcc always fails on _floatdifi.o. But how
can I implement them?
Thanks a lot!
Eric.
Thank you very much for the suggestion. But are there any more details about
them and libgcc. I read the internals but find few information. I will be very
appreciated.
Best Regards.
Eric
Hi, gcc
I have to send the new mail again for the software floating point problem.
I need more details about it. 1) If I use software floating point, does I need
implement float mode insns in md file? Such as movsf, movdf. 2)How to
generate correct object files of libgcc2 of floating point operat
Hi,
Still software floating point. :<
Thanks for the help. Now I use soft-float to build libgcc, but _floatdidf.o
fails for Cannot branch to undefined symbol, __floatsidf. Should I define
floatsidf in md file? But I have no floating point registers.
Regards.
Eric
Thank you very much about the help.
Acctually, I have included fp-bit.c in libgcc.mk. But the order is not
right, I think. Because _si_to_df.o is after the _floatdidf.o. Also, how
to change _si_to_df.o to _floatsidf.o? In md file?
I'm wondering that maybe I needn't to implement libgcc2.a, but that
Hello,
When building Libgcc with new porting gcc, _floatdidf.o failed for
undefined symbol
_floatsidf. I've been told that _floatsidf is in fpbit.c as
_si_to_df.o. Then I modified the libgcc.mk and firstly build fpbit.
But _pack_df.o failed for undefined symbol
_ashldi3.o which is in libgcc2.c. It
2005/9/15, Paul Brook <[EMAIL PROTECTED]>:
> On Thursday 15 September 2005 10:59, Eric Fisher wrote:
> > Hello,
> >
> > When building Libgcc with new porting gcc, _floatdidf.o failed for
> > undefined symbol
> > _floatsidf. I've been told that _floats
Hello,
It's my new port of gcc. Libgcc is almost compiled for now, except
unwind-dw2-fde.c.
The error information is
'../../gcc-3.4.4/gcc/unwind-dw2-fde.c:968: internal compiler error:
in insert_save,
at caller-save.c:728
Please submit a full bug report'
Of course, there are some thing wrong abo
Hi,
There is a little progress. I find it's concerned with gcc optimize.
When I change the option -O2 to -O0, it passes the make. Of
course, I'd like to say there are something wrong in my backend.
But, can somebody give me any clue?
Thanks.
Eric
Hello,
I'd like to ask a question about target macros of registers. In
mips.h, the fixed registers are defined as follows:
/* By default, fix the kernel registers ($26 and $27), the global
pointer ($28) and the stack pointer ($29). This can change
depending on the command-line options.
Hello,
Who can explains for me about the comparison insns in mips.md.
One question, why there is only define_expand patterns but no
define_insn. Supposed that I have a comparison instruction say 'cmp
%1, %2', should I implement define_insn patterns for comparison insns?
Here is a pattern fr
08 Oct 2005 10:40:40 -0700, Ian Lance Taylor :
> Eric Fisher <[EMAIL PROTECTED]> writes:
>
> > Who can explains for me about the comparison insns in mips.md.
>
> Look at the documentation for the bCOND instruction patterns.
>
> > One question, why there i
Hello,
Sorry, maybe it's not appropriate to put this question here. But I need help.
Porting gcc involves the relocation and BFD porting. I've added some
relocate type.
But after linked, the address is not correct. Are there any documents
about the relocation. And what should I do?
Thanks.
Eric
Hello,
This is a strange problem. Why an operantion that should be a 'xorsi3'
format, yet it comes out with a 'scond' format. I have defined
'xorsi3' indeed. When I use the encluesive operantion '^', it is ok to
emit 'xorsi3'. When I compile the libgcc, it is not ok in _pack_df.o.
So what's the pro
>Probably because it was optimized. If you want a better answer, you
>have to give us more info about what happened, such as a C testcase, and
>RTL dumps. But it is probably better if you look at this yourself.
>Generate debugging dumps, -da -fdump-tree-all, and then start looking.
>Presumably an
>It shouldn't. What is the actual error message?
>
>Ian
Such as follows,
dp-bit.c: In function `__pack_d':
dp-bit.c:435: error: unrecognizable insn:
(insn 33 32 34 0 dp-bit.c:167 (set (reg:SI 159)
(ltu:SI (reg:SI 158 [ .class ])
(const_int 2 [0x2]))) -1 (insn_list 32 (nil))
Hello, gcc
I think it's very interesting. I want to split a insn of loading SF
data through SI symbol, such as (set (reg:SF 5 $5) (mem/u/f:SF
(symbol_ref/u:SI ("*$LC0".
I want to it firstly load the address into a register, then load the
data through
the register. So I define the insn as follo
>> (define_insn "loadsf"
>> [(set (match_operand:SF 0 "register_operand" "=r")
>>(mem:SF (match_operand:SI 1 "immediate_operand" "m")))]
>This makes no sense, because the constraint means that the mem's
operand is >an immediate before reload (and you want it to be a
register), and a mem
Hello,
I have a doubt here about define_expand and would be appreciated for
your any help. The internals say,
Usually these statements prepare temporary registers for use as
internal operands in the RTL template, but they can also generate RTL
insns directly by calling routines such as emit_insn,
Hey,
It's very sorry. I have just found the answer just in the context.
It's a so stupid question.
DONE
Use the DONE macro to end RTL generation for the pattern. The only RTL
insns resulting from the pattern on this occasion will be those
already emitted by explicit calls to emit_insn within the
Hello,
Such a problem is difficult to find the reason. But can you give some
suggestion about the possible matter? This is the information on my
port. Thanks a lot.
dp-bit.c: In function `__muldf3':
dp-bit.c:957: error: unable to generate reloads for:
(insn 416 415 417 20 dp-bit.c:874 (set (reg:SI
Hi,
When I compile such c codes as following,
int a=0x,i;
int
sra[32]={0x,0x,0x,0x,0x,0x,0x,0x,
0x,0x,0x,0x,0x,0x,0x,0x,
0xf
Hello,
I have two questions about long long type.
Firstly, shall I support it in the machine.md file, or just leave it to libgcc?
Dose the libgcc support it if I don't implement in the machine.md file?
Secondly, is the long long type equal to DImode in the 32bit machine?
Such as adddi3, subdi3.
T
Hello,
For such a program,
int a=0;
int main(void)
{
...
}
We will see the compiler put the variable 'a' into the bss section.
That means that 'a' is a non-initialized variable. I don't know if this
is the gcc's strategy.
Happy Christmas.
Eric.
>Yes for zero'd initialized variables, GCC puts them into BSS to say
>space in the executable.
Thanks. But, you say 'to say space in the executable'. I'm not clear
what does it mean.
Eric.
Hi,
I guess it's about the gcc version. Gcc 3.4.4 does put the zero'd
variables into bss section. But I'd like to know if the older one does
it too. Say 2.95.2 19991024 (release)?
Thanks again.
Eric.
Hello,
There are some papers talking about the gcc register allocation in the
summit proceedings. I'd like to know wether the graph coloring
allocator has been used in the gcc-3.4.4. Also, where can I find some
reference of the gcc register allocation, besides the source codes and
summit proceeding
Hi,
Could you tell me what it means for 'test for excess errors'?
I run make check-gcc RUNTESTFLAGS='dg.exp' on my machine, and got
many failed tests for these errors on my porting gcc.
Do I need to setup something in order to run these testsuites for my port?
Besides DejaGnu and Tcl.
Thanks.
Eri
Hello,
I'd like to know since gcc implicitly call memset function to perform
optimization and my c libraries are unusable for now. Can I take
another way? Say don't call memset. How to do that?
Yours,
Eric.
Hello,
When I run the test suite for my port of gcc, there are some failures
caused by the optimization flag such as -O2/-O3, and the messages are
like,
930120-1.c: In function `f':
930120-1.c:138: internal compiler error: in verify_local_live_at_start, at flow.
c:546
It seems that because of th
Hi,
I'm looking at the fp-bit.h, fp-bit.c, and try to understand the
floating point operation simulation. But there are many proper noun
hard to get the conception. Such as
NGARDS
IMPLICIT_1
Are there any details or documents about these?
Thanks
Eric.
Hi,
I read the paper "The Visual Development of GCC Plug-ins with GDE"
from gcc summit 2009. It's a powerful tool. So where can I get it to
help me debug and study gcc?
Thanks a lot.
Eric
Hi,
Is it useful to implement a high-level universal function
tree_peeling_loop in tree-ssa-loop-manip.c? I want call it in
tree-ssa-loop-prefetch.c.
If yes, can anyone give me some clues? I find currently,
vect_do_peeling_for_loop_bound is doing a similar work in
tree-vect-transform.c.
Regards,
Hi,
I'm implementing a loop peeling function used in
tree-ssa-loop-prefetch.c according to the following comment,
/* Step 5: unroll the loop. TODO -- peeling of first and last few
iterations so that we do not issue superfluous prefetches. */
I take the functions slpeel_* in tree-vercteriz
2009/8/13 Sebastian Pop :
> Could you please send the patch you are working on, together with
> a reduced testcase? This could help to reproduce the error.
Thanks.
I put the patch and a test below. The patch is based on 4.4.0. It's
just a toy, I haven't a nice design for now.
Actually, first_n
2009/8/15 Sebastian Pop :
> You should put a TODO_update_ssa in the flags of prefetching pass.
> With the attached patch I don't see an error.
Thanks. Finally, I figure out that it's because that after copying the
loop, I should have created a preheader to ensure that new_loop's
preheader has onl
Hello,
I currently use aiSee (demo version) to view vcg dump of gcc. One
problem is that the tool works too slowly. The another problem is that
graph looks ugly, especially when unforlding a big cfg. Who can
recommend me a good vcg viewer? Thanks.
Best Regards,
Eric
Hi,
I run into such an XPASS for trunck. And it seems an old problem.
XPASS: gcc.dg/Wunreachable-8.c (test for bogus messages, line 7)
/* { dg-do compile } */
/* { dg-options "-O2 -Wunreachable-code" } */
float Factorial(float X)
{
float val = 1.0;
int k,j;
for (k=1; k < 5; k++) /* { dg-b
Hi,
I found that sometimes -fno-tree-dominator-opts will bring a big speed
promotion. This is because that pass_dominator tries to thread jumps.
But sometimes this will cause that the loop's exit bb does not
dominator its latch bb again. Then pass_complete_unroll is unable to
know the exact number
2010/1/6 Jeff Law :
> Please file a bug report with a complete testcase so that we can see what's
> happening rather than trying to speculate.
>
> jeff
>
Uh, seems this problem doesn't occur on trunk. Because before
pass_dominator, pass_complete_unrolli is able to unroll the following
test case.
Hi,
I just wrote a little gcc plugin, which can be used to show GIMPLE cfg
graphically when debug gcc. Currently, it's still a very initial
version. It,
* transfers tree dump into vcg file,
* then invokes vcgview (or aisee etc.) to show the graph.
I would like to improve it to support both tr
s the
reservation for all 'branch' insns? Is it OK?
Eric Fisher
2008-11-3
> So I think one of the possible solution would be to reverse the div.g and teq
> insn.
> And I think this is not hard to do, just modify mips_output_division()
> function.
> Also I think this is a better solution, since we can save a register.
Do you mean the modification like this?
+
+
+/* Us
Hello,
Anyone could tell how to be a gcc maintainer? Is there any
requirement? Actually, my previous work are all not based on the gcc
trunk. So no patch submitted. Anyway, it's cool to contribute :-)
Thanks.
Eric Fisher
2008-11-11
Ah, maybe I should say contributor.
Best regards,
Eric
2008/11/12 Manuel López-Ibáñez <[EMAIL PROTECTED]>:
> 2008/11/11 Eric Fisher <[EMAIL PROTECTED]>:
>> Hello,
>>
>> Anyone could tell how to be a gcc maintainer? Is there any
>> requirement? Actually, my
Interesting. At least. There should be a warning from gcc.
Eric
2008/11/14 Tim München <[EMAIL PROTECTED]>:
> On Friday 14 November 2008 10:09:22 Anna Sidera wrote:
>> Hello,
>>
>> The following code works in lcc in windows but it does not work in gcc in
>> unix. I think it is memory problem. In
Hi,
For if-conversion pass (pass_if_after_combine), we can see there're
some IF-THEN-ELSE cases which we try to transform. Let's say
find_if_case_1, for an example.
(1)
if (test) goto over; // x not live
x = a;
goto label;
over:
becomes
x = a;
> It avoids a branch instruction. For the first case, the path via "x =
> a" is "test -> jump -> set -> jump" (where "set" is th "x =
> a"-instruction). This becomes "set -> test -> jump". So one jump
> less.
Thank you very much for the detailed explanation. However, I have a
doubt here. IMO, t
e, will output
samples based on the labels. So this will help us to analyze the
samples for each basic block. But current generated code will have
many local labels with the same name. Perhaps it's again the
-fverbose-asm to enable this functionality. But where should I go if I
wanna implement this functionality?
Cheers,
Eric Fisher
Mar 16, 2009
INTERNAL_LABEL in the back-end. But there's also a problem
which is that the user need to consider the length of the function
name and length of the label string buff.
Best regards,
Eric Fisher
Mar 17, 2009
s completely modified with the contents of
variable @code{b}. Real definition are also known as @dfn{killing
definitions}. Similarly, the use of @code{b} reads all its bits.
"
Eric Fisher
May 15, 2009
2009/5/16 Diego Novillo :
> On Fri, May 15, 2009 at 02:12, Eric Fisher wrote:
>
>> I think it's a mistake between a and b. It should be,
>>
>> "
>> variable @code{a} is completely modified with the contents of
>> variable @code{b}. Real definition
d path
But, lto-plugin is failed in stage2 with the error
/usr/bin/ld: cannot find -lelf
I look into the Makefile and find that LDFLAGS is set as BOOT_LDFLAGS
scine stage2, so I have to set this variable also.
Is it a right way that it should go?
Best wishes,
Eric Fisher
Hi,
I just want to ask whether we have any special pass to reduce cache
miss? Or any idea or branch to enhance it.
Thanks
Eric Fisher
Hello
Sorry, I hope it's not an offensive or boring topic.
Some of my friends asked me if it's true that gcc will be replaced by
other compilers on a few OS and what is the problem.
Any comment?
Best wishes
Eric Fisher
Hi,
Try using gcc-vcg-plugin to browse tree and cfg during debug gcc. It's
just an initial version for now. Any suggestions will be appreciated.
:-)
http://code.google.com/p/gcc-vcg-plugin/
Thanks,
Eric Fisher
Hi,
In gccint, 7.2.3.3 Vector-specific attributes, there are two items
talking about vect_int_mult:
vect_int_mult
Target supports a vector widening multiplication of short operands
into an int result, or supports promotion (unpacking) from short to
int and a non-widening multiplication of int
Hello,
It will be appreciated if anyone could help send me the copyright
assignment forms. I need them to submit patches to gcc. I think it
should be an assignment for all future changes.
Thanks
Eric
I guess that the macro NGARDS is relevant to the guard digit. But I
still failed to have a clear conception about what it means. Others
are easy to know by IEEE 754 and "What Every Computer Scientist Should
Know about Floating-Point Arithmetic". Except,
define NGARDS 8L
define GARDROUND 0x7f
defin
Hi,
When I run the test suite on my port, there are many many failures
with the error like this,
ld: cannot find -lm
collect2: ld returned 1 exit status
I'm not sure whether it is the libm(math library), or it is of glibc.
But I guess it is a builtin library of gcc and has nothing to do with
math
Why so many tests need libm? I don't think the tests really used the
functions of libm. Can I port glibc to get it?
Eirc
Hi,
I'm wondering whether the precompiled headers tests are ok for
mips-elf-gcc 3.4.4 on cygwin. When I run the testsuite for
mips-elf-gcc on cygwin using such command,
make check-gcc RUNTESTFLAGS="pch.exp"
The errors are like these following. It seems that there is no
common-1.h at all.
In addat
Hi,
I think I've got the answer from GCC Bugzilla Bug 11341. It said that
this was possibly a known problem with cygwin. For some reason cygwin
has always had problems with PCH. Then I run the testsuite on the
linux and most of them passed.
Thanks for your time.
Eric.
But there are still some failures. I'm not sure if they are okey. The
error messages are like these,
Executing on host: /home/smj/build_gcc_mips/gcc/xgcc
-B/home/smj/build_gcc_mips/gcc/
/home/smj/gcc-3.4.4-mips/gcc/testsuite/gcc.dg/pch/static-1.c -O0
-I. -S -o static-1.s(timeout = 300)
PAS
But there are still some failures. I'm not sure if they are okey. The
error messages are like these,
Executing on host: /home/smj/build_gcc_mips/gcc/xgcc
-B/home/smj/build_gcc_mips/gcc/
/home/smj/gcc-3.4.4-mips/gcc/testsuite/gcc.dg/pch/static-1.c -O0
-I. -S -o static-1.s(timeout = 300)
PASS
Hi,
I will be appreciated for anyone tell me how to create libgcc_eh.a for
mips-elf-gcc.
I used this configuration, but failed
../gcc-3.4.4/configure --target=mips-elf --enable-languages=c --enable-shared
Yet libgcc_eh.a can be created for local i686 gcc, when use this,
../gcc-3.4.4/configure --en
Hi,
Happy Valentine's Day.
Suppose I have only pc-relative branch instructions such as 'b offset'
and don't have pc-region branch instructions such as 'j target'. So
what the function call should be translated? Do I have to always use
two instructions such as 'la reg, func' and 'b reg'? Especially
:
> On Feb 13, 2006, at 7:28 PM, Eric Fisher wrote:
> > Suppose I have only pc-relative branch instructions such as 'b offset'
>
>
> > and don't have pc-region branch instructions such as 'j target'. So
> > what the function call should be transla
r to hold the
function address anyway. Whatever we do with gcc backend or as/ld. I
see.
Thanks
Eric
2006/2/14, Mike Stump <[EMAIL PROTECTED]>:
> On Feb 13, 2006, at 8:31 PM, Eric Fisher wrote:
> > Thanks. I'm working to port gcc to our chip. I use mips-elf as the
> > sta
Hi,
While I read the mips.md, I find there are some constraints used in
function call templates, such as 'c' and 'j'. But these two
constraints seem not be defined and I can't find their explanation
both in source files and gcc internal. Well, aren't there anywhere I
missed? Otherwise, how can they
Hi,
Thanks for giving directions. I've read the codes about this and got
some conception. But I possibly made a mistake, I think. For the
linker, ppc64elf.em and elf64-ppc.c have the solution. For the gcc,
rs6000.c also has the solution. There is a mail, [tree-ssa] -longcall
branch islands for Darw
Hi,
Given such a source file,
/*fun.c*/
int b=2;
void fun(void)
{
int a=b;
}
Then compile it,
$ mips-elf-gcc -shared -fpic fun.c -o fun.so -save-temps
We can see this below from fun.s,
lw $2,%gp_rel(b)($28)
I think symble 'b' should be of GOT relocation.
But it isn't.
$ mips-elf-readelf
: nop
5ffe0694: 1047beqzv0,5ffe06b4
Why? And the symble 'b' is of absolute type(*A*)?
2006/2/23, Daniel Jacobowitz <[EMAIL PROTECTED]>:
> On Thu, Feb 23, 2006 at 01:33:05PM +0800, Eric Fisher wrote:
> > $ mips-elf-gcc -shared -fpic f
Hi,
I'm really confused by mips targets, such as mips-elf, mips-linux,
mips-elf-linux, mips-elf-linux-gnu. I will appreciate if anyone can
tell me the difference between them.
Thanks.
Eric.
Hello,
My port is originally aimed for mytarget-elf and has been able to built to use.
Now I want to use another target, mytarget-linux, just like mips-elf
and mips-linux.
Binutils is ok and has been installed, but when build gcc, there is
such a error,
/home/smj/build_gcc_linux/gcc/xgcc -B/home/s
Hi,
I installed cross gcc3.4.4 on my linux/pc server with
--target=mips-elf. When I use mips-linux-gcc to compile a c file, the
assembly code will have psuedo-op used for system v.4 (e.g. .cpload).
And the object file is of big endian. So I have to use flag
-mno-abicalls and -EL every time. Are the
But, they told me that mips-elf is for 'no-opsys' target, and does't
support glibc. So if I want to use gcc for operantion system and
glibc, should I use mipsel-linux?
Thanks
27 Feb 2006 22:55:48 -0800, Ian Lance Taylor :
> "Eric Fisher" <[EMAIL PROTECTED]&g
I think we shouldn't make abicalls as default in my opinion. :-)
2006/2/28, Eric Christopher <[EMAIL PROTECTED]>:
>
> On Feb 27, 2006, at 11:01 PM, Eric Fisher wrote:
>
> > But, they told me that mips-elf is for 'no-opsys' target, and does't
>
Hi,
After talking about mips-elf, mips-linux, mips-elf-linux-gnu, my
friend told that there is also a target of mips-linux-elf. My God,
confused.
Yours,
Eric.
Hi,
I've ported gcc to mytarget-linux version. The object file compiled
now are shared one. My current simulator is able to run static
executable program and just translate binary code one by one. I know
shared file needs dynamic linker to load. So I'd like to know can I
run shared file on my sim?
hi,
You know that treelang prescribes the function prototype must give the
storage class type explicitly, for an example, "external_definition
int add(int arg1, int arg2);"
I'd like to know how to modify the parse.y to let the storage type can
be implicitly and the default type is external_definiti
hi,
When I build gcc-3.2.2 for mips target, there's an error. What's the problem?
Thanks
Eirc
ake[1]: Leaving directory `/home/cii/qwang_gcc/libiberty'
xgcc: specs file malformed after 4096 characters
xgcc: specs file malformed after 4096 characters
xgcc: specs file malformed after 4096 character
Seems the question has been solved, here is the changes of
treelang/parse.y, just for fun :-)
$ diff treelang/parse.y treelang/parse_new.y -u
--- treelang/parse.y2004-01-08 15:50:46.0 +0800
+++ treelang/parse_new.y2006-04-13 18:00:34.390625000 +0800
@@ -48,6 +48,7 @@
#include
hi,
Anybody knows that if we can define a comment? For a statement such as,
COMMENT this is a comment.
will be preprocessed as,
// this is a comment.
or something valid and transparent to the compiler? Of cause we can't
directly use,
#define COMMENT //
Thanks.
Eric.
hi,
Does gcc support Simple Chinese language for now? Is there anyone
working on this?
Thanks.
hi,
I configure GCC as follow:
PATH=/gnutools/bin:$PATH ; export PATH
mkdir -p /tmp/build/gcc
cd /tmp/build/gcc
/src/gcc-3.2.1/configure --target=mipsel-elf \
--prefix=/gnutools --enable-languages=c,c++ \
--with-gnu-as --with-gnu-ld --with-newlib \
--without-headers --disable-shared --disable-t
I guess that the argument of the user defined command in gdbinit.in
should be $arg0. Also, due to the changes of the structure tree node,
ptc should be,
define ptc
-output (enum tree_code) $.common.code
+output (enum tree_code) $arg0.base.code
echo \n
end
Here's the patch,
--- gcc/gdbinit.in
hi
I'm not clear why we have 'udiv', but don't have 'umul' for Standard
Pattern Names. Does I need to define a nameless pattern for it?
Thanks in advance.
eric
hi
Is there anyone working on the loongson support of gcc? I notice
that loongson has been added into the currently developing binutils.
ericfisher
ot;
+ "nmadd.s\t%0,%1,%2"
+ [(set_attr "type""fmadd")
+ (set_attr "mode""SF")])
+
+(define_insn ""
+ [(set (match_operand:DF 0 "register_operand" "=f")
+ (minus:DF (match_dup 0)
+ (mult:DF (match_operand:DF 1
...
if n > 0 || ReadyTry[0]
...
here should be
if n > 0 && ReadyTry[0]
since 'the algorithm guarantees that the instruction with the highest
priority will be issued on the current cycle).'
Of course, implemented code in gcc is right :-)
Eric Fisher
2008-9-9
96 matches
Mail list logo