Skip to content
GitLab
  • Menu
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • sac2c sac2c
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 403
    • Issues 403
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 12
    • Merge requests 12
  • Deployments
    • Deployments
    • Releases
  • Wiki
    • Wiki
  • External wiki
    • External wiki
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • sac-group
  • sac2csac2c
  • Issues
  • #1263
Closed
Open
Created Dec 21, 2011 by Robert Bernecky@rbeDeveloper

APEX unit test UTCompress dies in EBTfundef due to N_ret woes, when compiled with -ecc

Bugzilla Link 893
Created on Dec 21, 2011 21:19
Version svn
OS Linux
Architecture PC

Extended Description

This code dies early in OPT when compiled with -ecc:
use Array:{++,genarray};
int main()
{ 
 z = genarray([2,3]++[0],0);
 StdIO::print(z);
 return(0);
}
apex@rattler:~/apex2003/benchmks/UTCompress$ sac2c crud.sac -ecc -v4
**** Optimization cycle pass: 3
   
  ****** Optimizing regular function:
  ******  _MAIN::main( hidden(1), hidden(2), hidden(0)): ...
           Applying common subexpression elimination ...
           Inferring loop invariant variables ...
           Applying type upgrade ...
           Eliminating Type Variables ...
           Eliminating Bottom Types ...
*** Compilation failed ***
*** Exit code 89 (Running SAC optimizations)
*** 1 Error(s), 0 Warning(s)
sac2c -V
sac2c v1.00-beta (Haggis And Apple)
 developer rev 17714:MODIFIED linux-gnu_x86_64
 (Tue Dec 20 16:34:06 EST 2011 by sac)
The non-obvious failure happens in EBTfundef, here:
   ftype = TUmakeProductTypeFromRets( FUNDEF_RETS( arg_node));
    
    bottom = TYgetBottom( ftype);
    if( bottom != NULL) {
... {abort}
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking