Thank you very much Ian and Shreyas for your quick response. So I guess,
my question now would be, what would be an exmple that matches this
constraint below?
((insn 1497 1924 1756 2 (set (mem:BI (plus:SI (reg/f:SI 2 r2)
(const_int -137 [0xffffff77])) [72 S1 A8])
(le:BI (reg:SI 12 r12)
(const_int 0 [0x0]))) 0 {*cmpsi_normal}
(insn_list:REG_DEP_TRUE 86 (
nil))
(nil))
The reason I ask is that, from my understanding it needs an instruction
that does the following:
if (r12 <= 0) then
(r2+ -137) = 1
else
(r2+ -137) = 0
Is this correct?
Thanks,
Balaji V. Iyer.
PS. I am sorry for posting in both the mailing list.
Ian Lance Taylor wrote:
> "Balaji V. Iyer" <[EMAIL PROTECTED]> writes:
>
> No need to send to both [email protected] and [EMAIL PROTECTED] I
> removed gcc-help in this reply. Thanks.
>
>> I am currently developing a GCC port for my own generic 32 bit
>> processor. I have this following error when I tried to compile a
>> benchmark.
>>
>> (insn 1497 1924 1756 2 (set (mem:BI (plus:SI (reg/f:SI 2 r2)
>> (const_int -137 [0xffffff77])) [72 S1 A8])
>> (le:BI (reg:SI 12 r12)
>> (const_int 0 [0x0]))) 0 {*cmpsi_normal}
>> (insn_list:REG_DEP_TRUE 86 (
>> nil))
>> (nil))
>> convolve.c:236: internal compiler error: in
>> reload_cse_simplify_operands,
>> at postreload.c:391
>> Please submit a full bug report,
>> with preprocessed source if appropriate.
>> See <URL:http://gcc.gnu.org/bugs.html> for instructions.
>> make: *** [convolve.o] Error 1
>>
>> My question is that..what is the constaint/instruction I am missing? If
>> you could give me an assembly example tto illustrate an instrction that
>> I
>> hvaent implemented, it would be nice too.
>
> This kind of error generally means that the operand predicate accepts
> an operand which no constraint matches. If the predicate (e.g.,
> register_operand) accepts an operand, then there must be a constraint
> that matches it. Otherwise you will get an error in
> constrain_operands, such as the above.
>
> Ian
>