This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: gcc port to StarCore
At 8:38 AM +0200 5/2/02, David Livshin wrote:
>
> > Can you post the define_expand and/or define_insn for these?
>>
>
>You are right - the pattern is:
>
>
>( define_expand "cmpsi"
> [ ( set ( cc0 )
> ( compare ( match_operand:SI 0 "drREG_operand" "d,z" )
> ( match_operand:SI 1 "drREG_operand" "d,z" )
> )
> )
> ]
> ""
> "
> {
> StarCore_DefineExpand_cmp( operands, FALSE, FALSE );
> DONE;
> }"
>)
Well, this would prevent the initial generation of compares with
literals as operands - but for most ports, the compiler will
initially "load" literals into pseudo-registers ANYWAY and let the
various optimization passes figure out which things are better off as
immediate values.
I should have just asked for your DEFINE_INSN that matches the
compare patterns. Also, you
use a function to actually generate the RTL - so I can't see what
sort of RTL you're really producing
or consuming!
How about posting:
1/ The rtl dump for your simple example - the first one, and
possibly the
combine dump.
2/ the DEFINE_INSNs for compares
--
Quality Software Management
http://home.earthlink.net/~qsmgmt
apl@alum.mit.edu
(978)287-0435 Voice
(978)808-6836 Cell
Software Process Improvement / Management Consulting
Language Design / Compiler Implementation