-bcwc:icc introduces code before IF() in CONDFUN for crc.sac
|
|
Bugzilla Link |
944 |
Created on |
Apr 03, 2012 17:13 |
Resolution |
FIXED |
Resolved on |
Apr 21, 2012 12:38 |
Version |
svn |
OS |
Linux |
Architecture |
PC |
Attachments |
crud.sac, xcrud.sac, 944-3.sac
|
Extended Description
Created an attachment (id=874)
source code to reproduce fault
sac2c -V
sac2c v1.00-beta (Haggis And Apple)
developer rev 17777:MODIFIED linux-gnu_x86_64
(Mon Apr 2 14:21:21 EDT 2012 by sac)
apex@rattler:~/apex3/benchmks/crc$ sac2c crud.sac -doawlf -nowlf -bcwc:icc -v1 >crud
This produces a corrupted CONDFUN, in which code precedes the IF().
E.g.:,
****************************************************************************
* Cond function:
* _MAIN::rhoIBB__Cond_0(...) [ body ]
****************************************************************************/
bool[.] _MAIN::rhoIBB__Cond_0( bool[.] ry { ,NN } , int zxrho { ,NN } , int yxrho { ,NN } , bool _flat_14 { ,NN } )
...
bool[.,.] _icc_2757 { , NN } ;
_idc_2758, _idc_2759, _icc_2756_pred = _same_shape_AxA_( ry, ry);
if (_flat_14)
{
_flat_15 = [ zxrho ];
z = _MAIN:Array::take( _flat_15, _idc_2759) ;
}
else
{
...
Marked as "major severity" because -doawlf depends on -ecc!