Adding CSE,DCR before ICC breaks ICC
|
|
Bugzilla Link |
690 |
Created on |
Mar 27, 2010 22:31 |
Version |
svn |
OS |
Linux |
Architecture |
PC |
Attachments |
SCSprf_drop2.sac |
Extended Description
Created an attachment (id=682)
source code to reproduce fault
I've been tracing a -ecc code problem, and it turns out to be
introduced by a change I made at Rev #16762, to introduce CSE and DCR
immediately before ICC (Phase 9), to eliminate a problem described
in Bug #679.
What happens (Rev #16762 onwards) is that ICC stutters. We get code like this
coming out of -b9:icc:
_idc_68, _icc_44_pred = _val_le_val_VxV_( _idc_66, _idc_67);
_idc_69, _icc_50_pred = _non_neg_val_V_( _idc_68);
_idc_70, _icc_54_pred = _non_neg_val_V_( _idc_69);
_idc_71, _icc_58_pred = _non_neg_val_V_( _idc_70);
This is more or less harmless, but not a good thing to have around.
I'll look into it eventually, but not before April Fools' Day, at the
earliest.
sac2c -ecc SCSprf_drop2.sac -b9:icc > crud
will reproduce the fault. More interesting is that compiling with
-noCSE makes the problem disappear.