Hi,
I am working on SDCC for quite some time now. I have
noticed that many a times iCode generation phase
Produces incorrect iCode but in the CSE pass (for eg.
In algebraicOpts()) Sandeep Dutta have put some
kludgy fixes which convert that
Incorrect iCode to correct one.
I wanted to know was there any specific reason for
this behavior. Why don’t we generate the correct iCode
in the ast2iCode pass itself.
I am asking this because there is a SERIOUS DRAWBACK
of this approach that one cannot disable the
optimization pass (CSE) as
In such case incorrect assembly will be produced. If I
use –nogcse option then compiler will generate
incorrect code.
Please let me know the reason for it as I want to
disable the optimization passes.
Regards,
Jatin Bhateja
Could you attach a sample file, for which compilation fails when using --nogcse?
Philipp
I don't think we will ever see a sample reproducing this problem from the OP.
I also do not expect an answer from Sandeep with a motivation for these kludges.
I've set this item pending.
This Tracker item was closed automatically by the system. It was
previously set to a Pending status, and the original submitter
did not respond within 30 days (the time period specified by
the administrator of this Tracker).