sac2c issueshttps://gitlab.sac-home.org/sac-group/sac2c/-/issues2017-11-19T20:28:51Zhttps://gitlab.sac-home.org/sac-group/sac2c/-/issues/1184Uninitialized field "appendelse" in SSA transformation2017-11-19T20:28:51ZRaphael 'kena' PossUninitialized field "appendelse" in SSA transformation| | |
| --- | --- |
| Bugzilla Link | [1171](http://bugs.sac-home.org/show_bug.cgi?id=1171) |
| Created on | Nov 05, 2015 17:23 |
| Version | svn |
| OS | All |
| Architecture | PC |
## Extended Description
<pre>Detected by valgrind:...| | |
| --- | --- |
| Bugzilla Link | [1171](http://bugs.sac-home.org/show_bug.cgi?id=1171) |
| Created on | Nov 05, 2015 17:23 |
| Version | svn |
| OS | All |
| Architecture | PC |
## Extended Description
<pre>Detected by valgrind:
==46755== Conditional jump or move depends on uninitialised value(s)
==46755== at 0x68459D3: USSATassign (UndoSSATransform.c:312)
==46755== by 0x66D72CB: TRAVdo (traverse.c:94)
==46755== by 0x6845955: USSATassign (UndoSSATransform.c:300)
==46755== by 0x66D72CB: TRAVdo (traverse.c:94)
==46755== by 0x6845955: USSATassign (UndoSSATransform.c:300)
==46755== by 0x66D72CB: TRAVdo (traverse.c:94)
==46755== by 0x66D7617: TRAVopt (traverse.c:152)
==46755== by 0x6845254: USSATblock (UndoSSATransform.c:167)
==46755== by 0x66D72CB: TRAVdo (traverse.c:94)
==46755== by 0x68450C9: USSATfundef (UndoSSATransform.c:139)
==46755== by 0x66D72CB: TRAVdo (traverse.c:94)
==46755== by 0x6845195: USSATfundef (UndoSSATransform.c:147)
The offending code:
/******************************************************************************
*
* function:
* node* USSATassign(node *arg_node, info *arg_info)
*
* description:
* traverses instruction and removes tagged assignments.
*
******************************************************************************/
node *USSATassign(node *arg_node, info *arg_info)
{
...
if ( ( INFO_APPENDELSE( arg_info))) { // <--- HERE, appendelse uninitialized
arg_node = TCappendAssign( INFO_ELSEASS( arg_info), arg_node);
INFO_ELSEASS( arg_info) = NULL;
INFO_APPENDELSE( arg_info) = FALSE;
}</pre>BugZillaBugZillahttps://gitlab.sac-home.org/sac-group/sac2c/-/issues/1183There is no way to resolve relative paths in linkobj's pragma unless one cd i...2017-11-19T20:28:48ZArtem ShinkarovThere is no way to resolve relative paths in linkobj's pragma unless one cd into the source tree| | |
| --- | --- |
| Bugzilla Link | [1170](http://bugs.sac-home.org/show_bug.cgi?id=1170) |
| Created on | Nov 04, 2015 14:25 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
## Extended Description
<pre>The output for Raph...| | |
| --- | --- |
| Bugzilla Link | [1170](http://bugs.sac-home.org/show_bug.cgi?id=1170) |
| Created on | Nov 04, 2015 14:25 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
## Extended Description
<pre>The output for Raphael:
gcc: error: src/test.o: No such file or directory
abort: System failed to execute shell command
abort: gcc -std=gnu99 /tmp/SAC_N1B09J/fun1.o /tmp/SAC_N1B09J/globals.o src/test.o
abort: -Ltest
abort: -L/usr/local/lib/sac2c/1.2.beta-BlackForest-54-8d30-dirty/modlibs/host/seq
Source tree:
test
├── main.sac
├── mod.sac
└── src
├── test.c
└── test.o
test.c:
int SACfoo (int a)
{
return a + 1;
}
mod.sac:
module mod;
export all;
external int foo (int x);
#pragma linkname "SACfoo"
#pragma linksign [0,1]
#pragma linkobj "src/test.o"
A call from test's parent directory:
sac2c test/mod.sac -Xl -Ltest</pre>BugZillaBugZillahttps://gitlab.sac-home.org/sac-group/sac2c/-/issues/1182MT performance lacking2017-11-19T20:28:45ZSven-Bodo ScholzMT performance lacking| | |
| --- | --- |
| Bugzilla Link | [1166](http://bugs.sac-home.org/show_bug.cgi?id=1166) |
| Created on | Oct 07, 2015 15:23 |
| Version | svn |
| OS | All |
| Architecture | All |
| Attachments | [tutu.sac](/uploads/0b405ae329ee26a...| | |
| --- | --- |
| Bugzilla Link | [1166](http://bugs.sac-home.org/show_bug.cgi?id=1166) |
| Created on | Oct 07, 2015 15:23 |
| Version | svn |
| OS | All |
| Architecture | All |
| Attachments | [tutu.sac](/uploads/0b405ae329ee26a341cb6646b8185c66/tutu.sac) |
## Extended Description
<pre>Created an attachment (id=1043)
source code used
When compiling the attached code with sac2c 1.2.beta-BlackForest-41-7dc65 (sac2c-follow branch)
I find two problems:
1) sequential execution is twice as fast as mt execution with one thread
2) scaling is virtually non existant
Here the exact data on a 24 core Intel Intel(R) Xeon(R) CPU X5650 @ 2.67GHz:
Sequential time:
-bash-4.1$ sac2c tutu3.sac
-bash-4.1$ /usr/bin/time ./a.out
1.04user 0.00system 0:01.07elapsed 96%CPU (0avgtext+0avgdata 1504maxresident)k
1504inputs+0outputs (0major+422minor)pagefaults 0swaps
=> 1.07 sec
Parallel times:
-bash-4.1$ sac2c -tmt_pth tutu3.sac
-bash-4.1$ /usr/bin/time ./a.out -mt 1
2.83user 0.00system 0:02.93elapsed 96%CPU (0avgtext+0avgdata 3296maxresident)k
3344inputs+0outputs (3major+363minor)pagefaults 0swaps
=> 2.93 secs
-bash-4.1$ /usr/bin/time ./a.out -mt 2
4.92user 0.19system 0:03.37elapsed 151%CPU (0avgtext+0avgdata 4184maxresident)k
0inputs+0outputs (0major+600minor)pagefaults 0swaps
=> 3.37 secs
-bash-4.1$ /usr/bin/time ./a.out -mt 4
4.16user 0.65system 0:01.52elapsed 316%CPU (0avgtext+0avgdata 5512maxresident)k
0inputs+0outputs (0major+510minor)pagefaults 0swaps
=> 1.52 secs</pre>BugZillaBugZillahttps://gitlab.sac-home.org/sac-group/sac2c/-/issues/1181Circular dependencies between RT libs breaks link on single-pass linkers2017-11-19T20:28:41ZRobert BerneckyCircular dependencies between RT libs breaks link on single-pass linkers| | |
| --- | --- |
| Bugzilla Link | [1165](http://bugs.sac-home.org/show_bug.cgi?id=1165) |
| Created on | Sep 30, 2015 16:00 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
## Extended Description
<pre>I just tried compil...| | |
| --- | --- |
| Bugzilla Link | [1165](http://bugs.sac-home.org/show_bug.cgi?id=1165) |
| Created on | Sep 30, 2015 16:00 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
## Extended Description
<pre>I just tried compiling Bodo's post-Black Forest parallel slowdown
code. It won't even compile under Ubuntu 14.04LTS:
sac2c bodobug.BlackForest.sac -O3 -v1 -tseq
/usr/local/lib/sac2c/1.2.beta-BlackForest-41-7dc65/rt/host/seq/libsac.so: undefined reference to `SAC_DISTMEM_rank'
/usr/local/lib/sac2c/1.2.beta-BlackForest-41-7dc65/rt/host/seq/libsac.so: undefined reference to `SAC_DISTMEM_Abort'
/usr/local/lib/sac2c/1.2.beta-BlackForest-41-7dc65/rt/host/seq/libsac.so: undefined reference to `SAC_DISTMEM_trace_profile_rank'
/usr/local/lib/sac2c/1.2.beta-BlackForest-41-7dc65/rt/host/seq/libsac.so: undefined reference to `SAC_HM_ShowDiagnostics'
collect2: error: ld returned 1 exit status
abort: System failed to execute shell command
abort: gcc -std=gnu99 /tmp/SAC_iw3D7C/a.out.o
abort: -L/usr/local/lib/sac2c/1.2.beta-BlackForest-41-7dc65/modlibs/host/seq
abort: -Wl,-rpath,/usr/local/lib/sac2c/1.2.beta-BlackForest-41-7dc65/modlibs/host/seq
abort: -L/usr/local/lib/sac2c/1.2.beta-BlackForest-41-7dc65/modlibs/host/seq
abort: -Wl,-rpath,/usr/local/lib/sac2c/1.2.beta-BlackForest-41-7dc65/modlibs/host/seq
abort: -L./host/seq -Wl,-rpath,./host/seq
abort: -L/usr/local/lib/sac2c/1.2.beta-BlackForest-41-7dc65/rt/host/seq
abort: -Wl,-rpath,/usr/local/lib/sac2c/1.2.beta-BlackForest-41-7dc65/rt/host/seq
abort: -lArrayMod -lArrayTransformMod -lConstantsMod -lArrayArithMod -lArrayBasicsMod
abort: -lBoolMod -lScalarArithMod -lsacpreludeMod -L/usr/local/dislin
abort: -Wl,-rpath,/usr/local/dislin -L/opt/local/lib -Wl,-rpath,/opt/local/lib -lsacphmc
abort: -lsac -lsacdistmem -lsacphmc -o a.out
abort: with exit code 1
compilation failed while Creating binary code.
This is using an installed sac2c:
sac2c -V
sac2c 1.2.beta-BlackForest-41-7dc65
product
(Wed Sep 30 10:43:27 EDT 2015 by sac)
sac@rattler:~/sac2c$ which sac2c
/usr/local/bin/sac2c</pre>BugZillaBugZillahttps://gitlab.sac-home.org/sac-group/sac2c/-/issues/1180-o oh! Can't find libsac.so if -o is used2017-11-19T20:28:35ZRobert Bernecky-o oh! Can't find libsac.so if -o is used| | |
| --- | --- |
| Bugzilla Link | [1163](http://bugs.sac-home.org/show_bug.cgi?id=1163) |
| Created on | Sep 26, 2015 20:28 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
| Attachments | [config.log](/uploads/894da6ce09e2...| | |
| --- | --- |
| Bugzilla Link | [1163](http://bugs.sac-home.org/show_bug.cgi?id=1163) |
| Created on | Sep 26, 2015 20:28 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
| Attachments | [config.log](/uploads/894da6ce09e265a2ffd071c43475b2b2/config.log) |
## Extended Description
<pre>I am confused by the behavior of -o in Ubuntu 10.04LTS with the
current sac2c:
sac2c SCSprf_toi.sac -o a.out
a.out; echo $?
a.out: error while loading shared libraries: libsac.so: cannot open shared object file: No such file or directory
127
sac2c SCSprf_toi.sac
a.out; echo $?
0
My naive expectation is that -o merely gives the binary file a different
name. It appears to be doing something else, though...
sac2c -V
sac2c 1.2.beta-BlackForest-35-78466
product
(Sat Sep 26 11:35:29 EDT 2015 by sac)
Here are the diffs from -d cccall:
3c3
< gcc -std=gnu99 -pedantic -fPIC -DPIC -Wall -Wextra -Wstrict-prototypes -Wno-unused-parameter -Wno-unused-but-set-variable -march=native -mtune=native -pedantic -Wall -Wno-unused -fno-builtin -I. -DSAC_TARGET_STRING=\"default_sbi\" -DSAC_MODEXT_STRING=\".so\" -DSAC_TARGET_ENV_STRING=\"host\" -DSAC_SBI_STRING=\"seq\" -DSAC_RC_METHOD=SAC_RCM_local -DSAC_BACKEND_C99 -DSAC_MT_LIB_ -DSAC_MT_MODE=0 -DSAC_DO_RTSPEC=0 -I/usr/local/include/sac2c/1.2.beta-BlackForest-35-78466 -c -o /tmp/SAC_jZ85El/a.out.o ./a.out.c
---
> gcc -std=gnu99 -pedantic -fPIC -DPIC -Wall -Wextra -Wstrict-prototypes -Wno-unused-parameter -Wno-unused-but-set-variable -march=native -mtune=native -pedantic -Wall -Wno-unused -fno-builtin -I. -DSAC_TARGET_STRING=\"default_sbi\" -DSAC_MODEXT_STRING=\".so\" -DSAC_TARGET_ENV_STRING=\"host\" -DSAC_SBI_STRING=\"seq\" -DSAC_RC_METHOD=SAC_RCM_local -DSAC_BACKEND_C99 -DSAC_MT_LIB_ -DSAC_MT_MODE=0 -DSAC_DO_RTSPEC=0 -I/usr/local/include/sac2c/1.2.beta-BlackForest-35-78466 -c -o /tmp/SAC_UtQc4H/crud.exe.o ./crud.exe.c
5c5
< gcc -std=gnu99 /tmp/SAC_jZ85El/a.out.o -L/usr/local/lib/sac2c/1.2.beta-BlackForest-35-78466/modlibs/host/seq -Wl,-rpath,/usr/local/lib/sac2c/1.2.beta-BlackForest-35-78466/modlibs/host/seq -L/usr/local/lib/sac2c/1.2.beta-BlackForest-35-78466/modlibs/host/seq -Wl,-rpath,/usr/local/lib/sac2c/1.2.beta-BlackForest-35-78466/modlibs/host/seq -L./host/seq -Wl,-rpath,./host/seq -L/usr/local/lib/sac2c/1.2.beta-BlackForest-35-78466/rt/host/seq -Wl,-rpath,/usr/local/lib/sac2c/1.2.beta-BlackForest-35-78466/rt/host/seq -lsacpreludeMod -L/usr/local/dislin -Wl,-rpath,/usr/local/dislin -L/opt/local/lib -Wl,-rpath,/opt/local/lib -lsacphmc -lsac -lsacdistmem -lsacphmc -o a.out
---
> gcc -std=gnu99 /tmp/SAC_UtQc4H/crud.exe.o -Lcrud.exe/host/seq -Wl,-rpath,crud.exe/host/seq -L/usr/local/lib/sac2c/1.2.beta-BlackForest-35-78466/modlibs/host/seq -Wl,-rpath,/usr/local/lib/sac2c/1.2.beta-BlackForest-35-78466/modlibs/host/seq -L/usr/local/lib/sac2c/1.2.beta-BlackForest-35-78466/modlibs/host/seq -Wl,-rpath,/usr/local/lib/sac2c/1.2.beta-BlackForest-35-78466/modlibs/host/seq -L./host/seq -Wl,-rpath,./host/seq -L/usr/local/lib/sac2c/1.2.beta-BlackForest-35-78466/rt/host/seq -Wl,-rpath,/usr/local/lib/sac2c/1.2.beta-BlackForest-35-78466/rt/host/seq -lsacpreludeMod -L/usr/local/dislin -Wl,-rpath,/usr/local/dislin -L/opt/local/lib -Wl,-rpath,/opt/local/lib -lsacphmc -lsac -lsacdistmem -lsacphmc -o crud.exe</pre>BugZillaBugZillahttps://gitlab.sac-home.org/sac-group/sac2c/-/issues/1179Runtime error: corrupted / missing heap administration data encountered2017-11-19T20:28:27ZThomas MachtRuntime error: corrupted / missing heap administration data encountered| | |
| --- | --- |
| Bugzilla Link | [1158](http://bugs.sac-home.org/show_bug.cgi?id=1158) |
| Created on | Jun 01, 2015 17:00 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
| Attachments | [modarray_reuse.sac](/uploads/5d01...| | |
| --- | --- |
| Bugzilla Link | [1158](http://bugs.sac-home.org/show_bug.cgi?id=1158) |
| Created on | Jun 01, 2015 17:00 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
| Attachments | [modarray_reuse.sac](/uploads/5d014ea663a87ca6f9b32627fa7ce978/modarray_reuse.sac) |
## Extended Description
<pre>*** SAC runtime error
*** Corrupted / missing heap administration data encountered upon memory de-allocation in arena 5
when compiling the attached example program with
sac2c -v0 -check hc modarray_reuse.sac
-check Incorporate runtime checks into executable program.
h: Use diagnostic heap manager.
c: Perform conformity checks.</pre>BugZillaBugZillahttps://gitlab.sac-home.org/sac-group/sac2c/-/issues/1178WLS corrupts AST if STEP != 12017-11-19T20:28:23ZRobert BerneckyWLS corrupts AST if STEP != 1| | |
| --- | --- |
| Bugzilla Link | [1154](http://bugs.sac-home.org/show_bug.cgi?id=1154) |
| Created on | Apr 18, 2015 21:21 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
| Attachments | [crud2.sac](/uploads/fae4c0c30fe46...| | |
| --- | --- |
| Bugzilla Link | [1154](http://bugs.sac-home.org/show_bug.cgi?id=1154) |
| Created on | Apr 18, 2015 21:21 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
| Attachments | [crud2.sac](/uploads/fae4c0c30fe46108f746b1e1adb633ab/crud2.sac) |
## Extended Description
<pre>Created an attachment (id=1035)
source code to cause failure
This bug can be created several ways. The key seems to be to get WLS
to run in SAACYC, with a non-unit WL_STEP.
This crash relies on extrema being present, allowing the LT function to
be optimized away, after which WLS does its thing (incorrectly).
** 12: Transforming with-loop representation ...
**** Simplifying with-loops ...
**** Transforming with-loop representation ...
Internal compiler error
Assertion "! WLSTRIDE_ISMODIFIED( stride1)" failed at wltransform/wltransform.c:3849 -- stride was modified
Please file a bug at: http://bugs.sac-home.org
sac@rattler:~/sac/testsuite/optimizations/pogorelationals$ sac2c -V
sac2c v1.00-beta (Haggis And Apple)
developer rev 18554 linux-gnu_x86_64
(Sat Apr 18 16:02:33 EDT 2015 by sac)
sac@rattler:~/sac/testsuite/optimizations/pogorelationals$ sac2c crud2.sac -v4 -extrema
I can also reproduce it using the pogo/pogorelational unit tests, which
also evaporate the relational. Those tests do not use extrema, so that
lets them out of the picture.</pre>BugZillaBugZillahttps://gitlab.sac-home.org/sac-group/sac2c/-/issues/1177-dopra may break on non-convex polyhedra if non-unit STEP2017-11-19T20:28:19ZRobert Bernecky-dopra may break on non-convex polyhedra if non-unit STEP| | |
| --- | --- |
| Bugzilla Link | [1152](http://bugs.sac-home.org/show_bug.cgi?id=1152) |
| Created on | Apr 05, 2015 20:12 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
## Extended Description
<pre>I am just beginning...| | |
| --- | --- |
| Bugzilla Link | [1152](http://bugs.sac-home.org/show_bug.cgi?id=1152) |
| Created on | Apr 05, 2015 20:12 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
## Extended Description
<pre>I am just beginning to learn about this polyhedral stuff, but I think
there may be the potential for at least one more bug in PRA:
PRA calls PolyLib, which apparently only supports convex polyhedra.
As I understand it, an affine expression tree describing a consumerWL
in which the producerWL has non-unit STEP (or maybe if either of
them have non-unit STEP) turns into a non-convex polyhedron, essentially
one with holes through it.
Intersecting the PWL and CWL (or multiple partitions of the same WL)
could erroneously produce an OKAY result, despite the fact that
they are NOT okay.
I do not have a test case to prove this. At present, it is just
a conjecture.</pre>BugZillaBugZillahttps://gitlab.sac-home.org/sac-group/sac2c/-/issues/1176CUDA polyhedral binaries are not generated by sac2c make!2017-11-19T20:28:16ZRobert BerneckyCUDA polyhedral binaries are not generated by sac2c make!| | |
| --- | --- |
| Bugzilla Link | [1149](http://bugs.sac-home.org/show_bug.cgi?id=1149) |
| Created on | Mar 10, 2015 18:42 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
## Extended Description
<pre>You have to go into...| | |
| --- | --- |
| Bugzilla Link | [1149](http://bugs.sac-home.org/show_bug.cgi?id=1149) |
| Created on | Mar 10, 2015 18:42 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
## Extended Description
<pre>You have to go into the tools/cuda directory, and do the "make" there.
I'm not sure of the proper way to fix this, so am not even going to try.
sac2c -V
sac2c v1.00-beta (Haggis And Apple)
developer rev 18531 linux-gnu_x86_64
(Tue Mar 10 14:41:02 EDT 2015 by sac)</pre>BugZillaBugZillahttps://gitlab.sac-home.org/sac-group/sac2c/-/issues/1175Missing symbols in product version of libsac.seq.so2017-11-19T20:28:13ZHans-Nikolai ViessmannMissing symbols in product version of libsac.seq.so| | |
| --- | --- |
| Bugzilla Link | [1144](http://bugs.sac-home.org/show_bug.cgi?id=1144) |
| Created on | Nov 20, 2014 17:15 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
## Extended Description
<pre>## System Details #...| | |
| --- | --- |
| Bugzilla Link | [1144](http://bugs.sac-home.org/show_bug.cgi?id=1144) |
| Created on | Nov 20, 2014 17:15 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
## Extended Description
<pre>## System Details ##
uname -a - Linux 2.6.32-431.20.3.el6.x86_64
#1 SMP Thu Jun 19 14:01:59 CDT 2014 x86_64 GNU/Linux
distro - Scientific (RedHat) Linux 6.5
## SAC Details ##
revision - 18508 devel
stdlib - compiled as 'MODE=lean make mt'
## Problem ##
I was having problems with a demo (bug 1143) and was looking for the
'SACARGfreeDataInternal' and 'SACARGcopyDataInternal' symbols in
'libsac.seq.so'. I noticed that these are present in the developer
version but not in the product version. Why is this?
## Devel Output ##
000000000000d59f T SACARGfree
000000000000d57e t SACARGfreeDataInternal
000000000000d2ea t SACARGfreeDataT_bool
000000000000d11c t SACARGfreeDataT_byte
000000000000d32c t SACARGfreeDataT_char
000000000000d36e t SACARGfreeDataT_classtype
000000000000d3b0 t SACARGfreeDataT_dots
000000000000d2a8 t SACARGfreeDataT_double
000000000000d434 t SACARGfreeDataT_double_dev
000000000000d4fa t SACARGfreeDataT_double_dist
000000000000d497 t SACARGfreeDataT_double_shmem
000000000000d266 t SACARGfreeDataT_float
000000000000d3f2 t SACARGfreeDataT_float_dev
000000000000d4b8 t SACARGfreeDataT_float_dist
000000000000d455 t SACARGfreeDataT_float_shmem
000000000000d287 t SACARGfreeDataT_floatvec
000000000000d34d t SACARGfreeDataT_hidden
000000000000d15e t SACARGfreeDataT_int
000000000000d413 t SACARGfreeDataT_int_dev
000000000000d4d9 t SACARGfreeDataT_int_dist
000000000000d476 t SACARGfreeDataT_int_shmem
000000000000d17f t SACARGfreeDataT_long
000000000000d2c9 t SACARGfreeDataT_longdbl
000000000000d1a0 t SACARGfreeDataT_longlong
000000000000d55d t SACARGfreeDataT_nothing
000000000000d53c t SACARGfreeDataT_rc
000000000000d13d t SACARGfreeDataT_short
000000000000d30b t SACARGfreeDataT_str
000000000000d51b t SACARGfreeDataT_sync
000000000000d1c1 t SACARGfreeDataT_ubyte
000000000000d203 t SACARGfreeDataT_uint
000000000000d224 t SACARGfreeDataT_ulong
000000000000d245 t SACARGfreeDataT_ulonglong
000000000000d0fb t SACARGfreeDataT_unknown
000000000000d3d1 t SACARGfreeDataT_user
000000000000d1e2 t SACARGfreeDataT_ushort
000000000000d38f t SACARGfreeDataT_void
## Prod Output ##
000000000000b640 T SACARGfree</pre>BugZillaBugZillahttps://gitlab.sac-home.org/sac-group/sac2c/-/issues/1174modarray WL on user defined types and dot notation2017-11-19T20:28:11ZSven-Bodo Scholzmodarray WL on user defined types and dot notation| | |
| --- | --- |
| Bugzilla Link | [1142](http://bugs.sac-home.org/show_bug.cgi?id=1142) |
| Created on | Nov 11, 2014 11:32 |
| Version | svn |
| OS | All |
| Architecture | PC |
| Attachments | [modarray.sac](/uploads/2c654b529b12...| | |
| --- | --- |
| Bugzilla Link | [1142](http://bugs.sac-home.org/show_bug.cgi?id=1142) |
| Created on | Nov 11, 2014 11:32 |
| Version | svn |
| OS | All |
| Architecture | PC |
| Attachments | [modarray.sac](/uploads/2c654b529b126bd3b429211d7fdeba93/modarray.sac) |
## Extended Description
<pre>Created an attachment (id=1030)
source code
The code generated for the dot notation in modarray With-Loops goes wrong when used on non-scalar user defined types.
sac2c modarray.sac
error: line 10 in file ./modarray.sac:
error: index variables (shape: int[1]) and generator boundaries (shape: int[2]) must have identical shapes.
compilation failed while Preparing for code optimization.</pre>BugZillaBugZillahttps://gitlab.sac-home.org/sac-group/sac2c/-/issues/1173sac2crc information confusing or missing2017-11-19T20:28:07ZRobert Berneckysac2crc information confusing or missing| | |
| --- | --- |
| Bugzilla Link | [1139](http://bugs.sac-home.org/show_bug.cgi?id=1139) |
| Created on | Sep 30, 2014 22:44 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
## Extended Description
<pre>I am trying to make...| | |
| --- | --- |
| Bugzilla Link | [1139](http://bugs.sac-home.org/show_bug.cgi?id=1139) |
| Created on | Sep 30, 2014 22:44 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
## Extended Description
<pre>I am trying to make sac2c use a gcc linker option, but am not
having much luck. Here's what I tried:
sac2c time2code.sac -v1
/usr/local/lib/sac2c/18614/rt/host/seq/libsac.so: undefined reference to `SAC_HM_ShowDiagnostics'
collect2: error: ld returned 1 exit status
abort: System failed to execute shell command
abort: gcc -std=gnu99 /tmp/SAC_0XIPol/a.out.o
abort: -L/usr/local/lib/sac2c/18614/modlibs/host/seq
abort: -Wl,-rpath,/usr/local/lib/sac2c/18614/modlibs/host/seq
abort: -L/usr/local/lib/sac2c/18614/modlibs/host/seq
abort: -Wl,-rpath,/usr/local/lib/sac2c/18614/modlibs/host/seq -L./host/seq
abort: -Wl,-rpath,./host/seq -L/usr/local/lib/sac2c/18614/rt/host/seq
abort: -Wl,-rpath,/usr/local/lib/sac2c/18614/rt/host/seq -lArrayMod
abort: -lArrayTransformMod -lConstantsMod -lArrayArithMod -lArrayBasicsMod -lBoolMod
abort: -lScalarArithMod -lsacpreludeMod -L/usr/local/dislin
abort: -Wl,-rpath,/usr/local/dislin -L/opt/local/lib -Wl,-rpath,/opt/local/lib
abort: -lsacphmc -lsac -lsacphmc -o a.out
abort: with exit code 1
compilation failed while Creating binary code.
This looks like the changed gcc linker behavior, where it no longer
does the "as-needed" inclusion of .so files.
I tried to fix this by creating /home/sac/.sac2crc, as follows:
target add_seq:
CFLAGS += " --Wl,--no-as-needed "
Compiling with this file produces the above result. I.e.,
it looks like the flags are NOT being used in the command line.
I know that the file IS being read, because if I spell the first
line as "xtarget" rather than "target", then the sac2c parser complains.
sac2c -V
sac2c v1.00-beta (Haggis And Apple)
developer rev 18614</pre>BugZillaBugZillahttps://gitlab.sac-home.org/sac-group/sac2c/-/issues/1172Ubuntu can't see libArray.so using sac2c-follow2017-11-19T20:28:04ZRobert BerneckyUbuntu can't see libArray.so using sac2c-follow| | |
| --- | --- |
| Bugzilla Link | [1138](http://bugs.sac-home.org/show_bug.cgi?id=1138) |
| Created on | Sep 30, 2014 16:20 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
## Extended Description
<pre>I just recompiled s...| | |
| --- | --- |
| Bugzilla Link | [1138](http://bugs.sac-home.org/show_bug.cgi?id=1138) |
| Created on | Sep 30, 2014 16:20 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
## Extended Description
<pre>I just recompiled sac2c and the stdlib from scratch, under sac2c-follow
on Ubuntu 14.04 LTS.
At this point, I am unable to compile anything that uses the standard
library:
ls /usr/local/libexec/sac2c/18614
comslc ctest libsac2c.so sac2c-p saccc tree
csima libsac2c.d.so sac2c sac2tex sacpolylibisnullintersect
csimt libsac2c.p.so sac2c-d sac4c sacprapolyhedral
sac@rattler:~/sac/testsuite/optimizations/awlf$ sac2c time2code.sac
MT_MODE = 0 in target, forcing -numthreads to 1.
** 1: Loading SAC program ...
**** Locating source code ...
Reading from file "./time2code.sac" ...
**** Running C preprocessor ...
**** Parsing input file ...
abort: Cannot find library `tree/host/libArrayTree.so' for module `Array'
compilation failed while Loading SAC program.
sac@rattler:~/sac/testsuite/optimizations/awlf$ ls /usr/local/libexec/sac2c/18614/tree/host/
libsacpreludeTree.so
I see that there is nothing under tree/host except the sacprelude, so
the abort makes sense.
I looked for some help on the sac-home web site, here:
http://www.sac-home.org/index.php?p=.%2F55_Download%2F41_Installation%2F41_Trouble_Shooting
cat $SAC2CBASE/sac2crc
# Circumvent ubuntu linker problem.
target seq:
CFLAGS += " --Wl,--no-as-needed "
There is an empty .sac2crc in /home/sac.
I am guessing something is wrong with the install of the generated
stdlib.
sudo make install
for the stdlib shows, in part, this:
Making install for target mt_pth
** Note: modules Dislin DislinBars DislinQuick DislinCanvas DislinPage DislinPlot3d DislinSystem disabled due to configuration.
make[3]: Entering directory `/home/sac/sac/BASE/stdlib'
/usr/bin/install -c -d /usr/local/libexec/sac2c/18604/tree/host
/usr/bin/install -c -d /usr/local/lib/sac2c/18604/modlibs/host/mt-pth
sac2c-p -V
sac2c v1.00-beta (Haggis And Apple)
product rev 18614
(Mon Sep 29 16:03:13 EDT 2014 by sac)
sac@rattler:~/sac/testsuite/optimizations/awlf$ sac2c-d -V
sac2c v1.00-beta (Haggis And Apple)
developer rev 18614
Eventually, I did a .configure in the stdlib before building
and installing the stdlib. That resolved the above problem,
but things then die in the linker, as noted in an earlier bug report.
This strikes me as something that is going to break a lot
of attempts to work with sac2c. Perhaps the makefile
can be fancied up so that it detects when sac2c has been changed,
and force a rerun of configure, or else abort with a suitable
error message?</pre>BugZillaBugZillahttps://gitlab.sac-home.org/sac-group/sac2c/-/issues/1171opt WLLO broken when inlining fold operation2017-11-19T20:26:20ZSven-Bodo Scholzopt WLLO broken when inlining fold operation| | |
| --- | --- |
| Bugzilla Link | [1135](http://bugs.sac-home.org/show_bug.cgi?id=1135) |
| Created on | Sep 19, 2014 14:51 |
| Version | svn |
| OS | All |
| Architecture | PC |
| Attachments | [bound.sac](/uploads/50af64379077a9a...| | |
| --- | --- |
| Bugzilla Link | [1135](http://bugs.sac-home.org/show_bug.cgi?id=1135) |
| Created on | Sep 19, 2014 14:51 |
| Version | svn |
| OS | All |
| Architecture | PC |
| Attachments | [bound.sac](/uploads/50af64379077a9a07db9295907727bc0/bound.sac), [1130.sac](/uploads/e162a457b02efcd562100993aefad122/1130.sac) |
## Extended Description
<pre>Created an attachment (id=1023)
source code
sac2c-d -mt -doWLLO -minmtsize 40 -o lib -Llib 1130.sac -noprelude
leads to segfault in DCR caused by a broken assignment chain after bOPT:
scs__SSA0_1 = _prop_obj_in_( _flat_12, scs);
scs__SSA0_3 = _prop_obj_out_( scs__SSA0_2);
scs__SSA0_2, c__SSA0_2 = maxclique::expandFS__Cond_1( _pinl_666__flat_50, scs__SSA0_1, c__SSA0_1) ;</pre>BugZillaBugZillahttps://gitlab.sac-home.org/sac-group/sac2c/-/issues/1170AKD fold with state breaks in ICM implementation2017-11-19T20:30:33ZSven-Bodo ScholzAKD fold with state breaks in ICM implementation| | |
| --- | --- |
| Bugzilla Link | [1134](http://bugs.sac-home.org/show_bug.cgi?id=1134) |
| Created on | Sep 19, 2014 14:38 |
| Version | svn |
| OS | All |
| Architecture | PC |
| Attachments | [1134.sac](/uploads/5ea60392abd00b92...| | |
| --- | --- |
| Bugzilla Link | [1134](http://bugs.sac-home.org/show_bug.cgi?id=1134) |
| Created on | Sep 19, 2014 14:38 |
| Version | svn |
| OS | All |
| Architecture | PC |
| Attachments | [1134.sac](/uploads/5ea60392abd00b929450f62ec35c0f95/1134.sac), [bound.sac](/uploads/f5a6571d43597c115eb44638e98e99dc/bound.sac) |
## Extended Description
<pre>Created an attachment (id=1021)
source code
attached code fails if taking away the inline of the fold function:
sac2c-d -v1 -mt -doWLLO -minmtsize 40 -o lib -Llib 1134.sac -noprelude
warning: Module/class 'maxclique` should be in a file named "maxclique.sac" instead of "1134.sac"
fun1.c:2217:7: warning: incompatible pointer to integer conversion assigning to 'int' from 'bool *' (aka 'int *'); dereference with * [-Wint-conversion]
SAC_MT_SYNC_FOLD_out( SACf_maxclique_CL_ST___mtspmdf_272_expandFS__bl_300__bl_300__SACt_bound__bound, 1, (SACl_cs, (AKD, (NHD, (NUQ, (INT, (GLO, (NON, (NOT, )))))))), (SACp_mtspmdfanon_271_scs__SSA0_2, (SCL, (NHD, (NUQ, (INT, (GLO, (NON, (NOT, ))))))))...
^
/Volumes/Users/sbs/sac2c//include/sac.h:4167:72: note: expanded from macro 'SAC_MT_SYNC_FOLD_out'
#define SAC_MT_SYNC_FOLD_out( arg1, arg2, nt , gra1, gra2, gra3, gra4) CAT_M4_mt_gen_19(SAC_MT_SYNC_FOLD_out_, CAT_M4_mt_gen_20(NT_SHP(nt), NT_HID(nt)))( arg1, arg2, nt , gra1, gra2, gra3, gra4)
^
/Volumes/Users/sbs/sac2c//include/sac.h:4186:32: note: expanded from macro 'CAT_M4_mt_gen_19'
#define CAT_M4_mt_gen_19(x, y) xCAT_M4_mt_gen_19(x, y)
^
/Volumes/Users/sbs/sac2c//include/sac.h:4187:33: note: expanded from macro 'xCAT_M4_mt_gen_19'
#define xCAT_M4_mt_gen_19(x, y) x##y
^
note: (skipping 1 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/Volumes/Users/sbs/sac2c//include/sac.h:4174:42: note: expanded from macro 'SAC_MT_SYNC_FOLD_out_AKDNHD'
#define SAC_MT_SYNC_FOLD_out_AKDNHD(...) SAC_MT_SYNC_FOLD_out__DESC(__VA_ARGS__)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Volumes/Users/sbs/sac2c//include/sac.h:3922:93: note: expanded from macro 'SAC_MT_SYNC_FOLD_out__DESC'
#define SAC_MT_SYNC_FOLD_out__DESC( spmdfun, num, accu_NT, val_NT, basetype, tag, foldfun) SAC_MT_RECEIVE_RESULT_out__DESC( spmdfun, SAC_MT_son_id, num, val_NT); SAC_##tag##_FUNAP2( foldfun, SAC_ND_ARG_out( accu_NT, basetype), SAC_ND_ARG_in( accu_NT, baset...
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Volumes/Users/sbs/sac2c//include/sac.h:3913:99: note: expanded from macro 'SAC_MT_RECEIVE_RESULT_out__DESC'
#define SAC_MT_RECEIVE_RESULT_out__DESC( spmdfun, local_id, num, var_NT) SAC_ND_A_FIELD( var_NT) = rdata[local_id].in_##num; SAC_ND_A_DESC( var_NT) = rdata[local_id].in_##num##_desc;
^ ~~~~~~~~~~~~~~~~~~~~~~~~
fun1.c:2217:7: error: use of undeclared identifier '_ICM_IS_UNDEFINED_'
/Volumes/Users/sbs/sac2c//include/sac.h:4167:72: note: expanded from macro 'SAC_MT_SYNC_FOLD_out'
#define SAC_MT_SYNC_FOLD_out( arg1, arg2, nt , gra1, gra2, gra3, gra4) CAT_M4_mt_gen_19(SAC_MT_SYNC_FOLD_out_, CAT_M4_mt_gen_20(NT_SHP(nt), NT_HID(nt)))( arg1, arg2, nt , gra1, gra2, gra3, gra4)
^
/Volumes/Users/sbs/sac2c//include/sac.h:4186:32: note: expanded from macro 'CAT_M4_mt_gen_19'
#define CAT_M4_mt_gen_19(x, y) xCAT_M4_mt_gen_19(x, y)
^
/Volumes/Users/sbs/sac2c//include/sac.h:4187:33: note: expanded from macro 'xCAT_M4_mt_gen_19'
#define xCAT_M4_mt_gen_19(x, y) x##y
^
note: (skipping 8 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/Volumes/Users/sbs/sac2c//include/sac.h:1015:38: note: expanded from macro 'SAC_ND_A_DESC_SCLNHDNUQ'
#define SAC_ND_A_DESC_SCLNHDNUQ(...) SAC_ND_A_DESC__UNDEF(__VA_ARGS__)
^
/Volumes/Users/sbs/sac2c//include/sac.h:686:40: note: expanded from macro 'SAC_ND_A_DESC__UNDEF'
#define SAC_ND_A_DESC__UNDEF( var_NT) SAC_ICM_UNDEF()
^
/Volumes/Users/sbs/sac2c//include/sac.h:3066:26: note: expanded from macro 'SAC_ICM_UNDEF'
#define SAC_ICM_UNDEF() _ICM_IS_UNDEFINED_
^
fun1.c:2217:7: error: too few arguments to function call, expected 7, have 6
...SAC_MT_SYNC_FOLD_out( SACf_maxclique_CL_ST___mtspmdf_272_expandFS__bl_300__bl_300__SACt_bound__bound, 1, (SACl_cs, (AKD, (NHD, (NUQ, (INT, (GLO, (NON, (NOT, )))))))), (SACp_mtspmdfanon_271_scs__SSA0_2, (SCL, (NHD, (NUQ, (INT, (GLO, (NON, (NOT, )))))))), bool, MT, SACf_maxclique_CL_MT__maxsum__bl_X__bl_X);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Volumes/Users/sbs/sac2c//include/sac.h:4167:72: note: expanded from macro 'SAC_MT_SYNC_FOLD_out'
#define SAC_MT_SYNC_FOLD_out( arg1, arg2, nt , gra1, gra2, gra3, gra4) CAT_M4_mt_gen_19(SAC_MT_SYNC_FOLD_out_, CAT_M4_mt_gen_20(NT_SHP(nt), NT_HID(nt)))( arg1, arg2, nt , gra1, gra2, gra3, gra4)
^
/Volumes/Users/sbs/sac2c//include/sac.h:4186:32: note: expanded from macro 'CAT_M4_mt_gen_19'
#define CAT_M4_mt_gen_19(x, y) xCAT_M4_mt_gen_19(x, y)
^
/Volumes/Users/sbs/sac2c//include/sac.h:4187:33: note: expanded from macro 'xCAT_M4_mt_gen_19'
#define xCAT_M4_mt_gen_19(x, y) x##y
^
note: (skipping 2 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
/Volumes/Users/sbs/sac2c//include/sac.h:3922:165: note: expanded from macro 'SAC_MT_SYNC_FOLD_out__DESC'
#define SAC_MT_SYNC_FOLD_out__DESC( spmdfun, num, accu_NT, val_NT, basetype, tag, foldfun) SAC_MT_RECEIVE_RESULT_out__DESC( spmdfun, SAC_MT_son_id, num, val_NT); SAC_##tag##_FUNAP2( foldfun, SAC_ND_ARG_out( accu_NT, basetype), SAC_ND_ARG_in( accu_NT, baset...
^
<scratch space>:95:1: note: expanded from here
SAC_MT_FUNAP2
^
/Volumes/Users/sbs/sac2c//include/sac.h:3924:65: note: expanded from macro 'SAC_MT_FUNAP2'
#define SAC_MT_FUNAP2( name, ...) name( SAC_MT_self, __VA_ARGS__);
^
./header.h:318:1: note: 'SACf_maxclique_CL_MT__maxsum__bl_X__bl_X' declared here
SAC_C_EXTERN
^
./header.h:81:32: note: expanded from macro 'SAC_C_EXTERN'
#define SAC_C_EXTERN extern
^
1 warning and 2 errors generated.
abort: System failed to execute shell command
abort: cd /tmp/SAC_y2ljku; gcc -pedantic -Wall -Wno-unused -fno-builtin -march=native -mtune=native -I$SAC2CBASE/include/ -c fun1.c -o fun1_nonpic.o
abort: with exit code 1
compilation failed while Creating binary code, 1 warning(s).
-sbs-Bodos-IMac-></pre>BugZillaBugZillahttps://gitlab.sac-home.org/sac-group/sac2c/-/issues/1169reference parameters and propagate break2017-11-19T20:26:12ZSven-Bodo Scholzreference parameters and propagate break| | |
| --- | --- |
| Bugzilla Link | [1133](http://bugs.sac-home.org/show_bug.cgi?id=1133) |
| Created on | Sep 19, 2014 12:47 |
| Version | svn |
| OS | All |
| Architecture | PC |
| Attachments | [1130.sac](/uploads/6856ef4671ea2574...| | |
| --- | --- |
| Bugzilla Link | [1133](http://bugs.sac-home.org/show_bug.cgi?id=1133) |
| Created on | Sep 19, 2014 12:47 |
| Version | svn |
| OS | All |
| Architecture | PC |
| Attachments | [1130.sac](/uploads/6856ef4671ea257425d0e27f09bc2ebd/1130.sac), [bound.sac](/uploads/4dea69576b06b40f32608d3e6cd15d6d/bound.sac) |
## Extended Description
<pre>Created an attachment (id=1019)
source code that fails; requires further class
The attached example breaks upon
sac2c -v1 -mt -doWLLO -minmtsize 40 -o lib -Llib 1130.sac
with
warning: Module/class 'maxclique` should be in a file named "maxclique.sac" instead of "1130.sac"
fun3.c:1293:7: error: use of undeclared identifier 'SACl_scs__p'
SAC_ND_PROP_OBJ_UNBOX( (SACl_scs, (SCL, (NHD, (NUQ, (INT, (GLO, (FPM, (NOT, )))))))), (SACl_scs, (SCL, (NH...
^
/Volumes/Users/sbs/sac2c//include/sac.h:3958:77: note: expanded from macro 'SAC_ND_PROP_OBJ_UNBOX'
#define SAC_ND_PROP_OBJ_UNBOX( unboxed, boxed) SAC_ND_A_FIELD( unboxed) = *SAC_NAMEP( SAC_ND_A_FIELD( boxed));
^
/Volumes/Users/sbs/sac2c//include/sac.h:785:27: note: expanded from macro 'SAC_NAMEP'
#define SAC_NAMEP( name) CAT0( name, __p)
^
/Volumes/Users/sbs/sac2c//include/sac.h:250:21: note: expanded from macro 'CAT0'
#define CAT0( x, y) xCAT0( x, y)
^
/Volumes/Users/sbs/sac2c//include/sac.h:251:22: note: expanded from macro 'xCAT0'
#define xCAT0( x, y) x##y
^
<scratch space>:18:1: note: expanded from here
SACl_scs__p
^
fun3.c:1298:7: error: use of undeclared identifier 'SACl_scs__p'
SAC_ND_PROP_OBJ_BOX( (SACl_scs, (SCL, (NHD, (NUQ, (INT, (GLO, (FPM, (NOT, )))))))), (SACl_scs, (SCL, (NHD...
^
/Volumes/Users/sbs/sac2c//include/sac.h:3959:48: note: expanded from macro 'SAC_ND_PROP_OBJ_BOX'
#define SAC_ND_PROP_OBJ_BOX( boxed, unboxed) *SAC_NAMEP( SAC_ND_A_FIELD( boxed)) = SAC_ND_A_FIELD( unboxed);
^
/Volumes/Users/sbs/sac2c//include/sac.h:785:27: note: expanded from macro 'SAC_NAMEP'
#define SAC_NAMEP( name) CAT0( name, __p)
^
/Volumes/Users/sbs/sac2c//include/sac.h:250:21: note: expanded from macro 'CAT0'
#define CAT0( x, y) xCAT0( x, y)
^
/Volumes/Users/sbs/sac2c//include/sac.h:251:22: note: expanded from macro 'xCAT0'
#define xCAT0( x, y) x##y
^
<scratch space>:18:1: note: expanded from here
SACl_scs__p
^
fun3.c:1362:261: warning: implicit declaration of function 'NONE' is invalid in C99 [-Wimplicit-function-declaration]
...(NOT, )))))))), (SACp_mtspmdfanon_2734_scs, (SCL, (NHD, (NUQ, (INT, (GLO, (NON, (NOT, )))))))), int, ND, NONE);
^
/Volumes/Users/sbs/sac2c//include/sac.h:4167:190: note: expanded from macro 'SAC_MT_SYNC_FOLD_out'
...CAT_M4_mt_gen_20(NT_SHP(nt), NT_HID(nt)))( arg1, arg2, nt , gra1, gra2, gra3, gra4)
^
/Volumes/Users/sbs/sac2c//include/sac.h:4168:71: note: expanded from macro 'SAC_MT_SYNC_FOLD_out_SCLNHD'
#define SAC_MT_SYNC_FOLD_out_SCLNHD(...) SAC_MT_SYNC_FOLD_out__NODESC(__VA_ARGS__)
^
/Volumes/Users/sbs/sac2c//include/sac.h:3920:189: note: expanded from macro 'SAC_MT_SYNC_FOLD_out__NODESC'
...foldfun) SAC_MT_RECEIVE_RESULT_out__NODESC( spmdfun, SAC_MT_son_id, num, val_NT); SAC_##tag##_FUNAP2( foldfun...
^
/Volumes/Users/sbs/sac2c//include/sac.h:661:35: note: expanded from macro 'SAC_ND_FUNAP2'
#define SAC_ND_FUNAP2( name, ...) name(__VA_ARGS__);
^
1 warning and 2 errors generated.
abort: System failed to execute shell command
abort: cd /tmp/SAC_trU5a4; gcc -pedantic -Wall -Wno-unused -fno-builtin -march=native -mtune=native
abort: -I$SAC2CBASE/include/ -O3 -c fun3.c -o fun3_nonpic.o
abort: with exit code 1
compilation failed while Creating binary code, 1 warning(s).</pre>BugZillaBugZillahttps://gitlab.sac-home.org/sac-group/sac2c/-/issues/1168sac2c gets uppity about object filename after Mull2017-11-19T20:26:08ZRobert Berneckysac2c gets uppity about object filename after Mull| | |
| --- | --- |
| Bugzilla Link | [1128](http://bugs.sac-home.org/show_bug.cgi?id=1128) |
| Created on | Aug 07, 2014 18:03 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
## Extended Description
<pre>This puzzles me. I ...| | |
| --- | --- |
| Bugzilla Link | [1128](http://bugs.sac-home.org/show_bug.cgi?id=1128) |
| Created on | Aug 07, 2014 18:03 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
## Extended Description
<pre>This puzzles me. I have no idea why naming an object file should
affect itslinkability. In the following, the only difference
is that one compile specifies the name of the object file, while
the other uses the default value:
sac@rattler:~/sac/testsuite/optimizations/awlf$ rm a.out sumrotateiotaAKSAKD.sac.exe
sac@rattler:~/sac/testsuite/optimizations/awlf$ sac2c -v0 -target seq -doawlf -nowlf -noctz -doscwlf sumrotateiotaAKSAKD.sac
sac@rattler:~/sac/testsuite/optimizations/awlf$ a.out; echo $?
0
sac@rattler:~/sac/testsuite/optimizations/awlf$ sac2c -v0 -target seq -doawlf -nowlf -noctz -doscwlf sumrotateiotaAKSAKD.sac -o sumrotateiotaAKSAKD.sac.exe
sac@rattler:~/sac/testsuite/optimizations/awlf$ ./sumrotateiotaAKSAKD.sac.exe ; echo $?./sumrotateiotaAKSAKD.sac.exe: error while loading shared libraries: libArrayMod.so: cannot open shared object file: No such file or directory
127
Compiling with "-o a.out " also causes the loader to fail.
sac2c -V
sac2c v1.00-beta (Haggis And Apple)
product rev 18604
(Wed Aug 6 16:04:14 EDT 2014 by sac)</pre>BugZillaBugZillahttps://gitlab.sac-home.org/sac-group/sac2c/-/issues/1167Post-Mull DevCamp oddities2017-11-19T20:26:05ZRobert BerneckyPost-Mull DevCamp oddities| | |
| --- | --- |
| Bugzilla Link | [1126](http://bugs.sac-home.org/show_bug.cgi?id=1126) |
| Created on | Jul 16, 2014 19:11 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
## Extended Description
<pre>I'm trying to get m...| | |
| --- | --- |
| Bugzilla Link | [1126](http://bugs.sac-home.org/show_bug.cgi?id=1126) |
| Created on | Jul 16, 2014 19:11 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
## Extended Description
<pre>I'm trying to get my development box here back on its wheels, and
have run into a number of anomalies that I'll report here:
1. cd sac2c; make clean:
Removing compilation target: bin/sacprapolyhedral
/bin/bash: bin/sac2c: No such file or directory
./src/makefiles/rtlibs.mkf:23: ** Warning: SAC2CRC=${SAC2CRC:-setup/sac2crc} LD_LIBRARY_PATH=lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} DYLD_LIBRARY_PATH=lib${DYLD_LIBRARY_PATH:+:$DYLD_LIBRARY_PATH} bin/sac2c does not appear to work - cannot determine SBI data, skipping
make[1]: Nothing to be done for `clean'.
/bin/bash: bin/sac2c: No such file or directory
./src/makefiles/rtlibs.mkf:23: ** Warning: SAC2CRC=${SAC2CRC:-setup/sac2crc} LD_LIBRARY_PATH=lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} DYLD_LIBRARY_PATH=lib${DYLD_LIBRARY_PATH:+:$DYLD_LIBRARY_PATH} bin/sac2c does not appear to work - cannot determine SBI data, skipping
make[1]: Nothing to be done for `clean'.
2. cd sac2c; make:
Codeveloper code: annotate_memory_transfers.c
..
Compiling executionmode.c: In function ‘CUTEMassign’:
cuda/cuda_tag_executionmode.c:597:18: warning: comparison between ‘cudaexecmode_t’ and ‘enum <anonymous>’ [-Wenum-compare]
if( old_mode == CUDA_DEVICE_SINGLE &&
^
Compiling developer code: prepare_forloop_generation.c
Compiling developer code: cuda_create_cells.c
Compiling developer code: minimize_cudast_transfers.c
Compiling developer code: single_thread_kernels.c
Compiling developer code: adjust_stknl_rets.c
cuda/cuda_create_cells.c: In function ‘CUCCassign’:
cuda/cuda_create_cells.c:90:34: warning: comparison between ‘mtexecmode_t’ and ‘enum <anonymous>’ [-Wenum-compare]
if( ASSIGN_EXECMODE( arg_node) == CUDA_DEVICE_SINGLE) {
^
cuda/cuda_create_cells.c:97:60: warning: comparison between ‘mtexecmode_t’ and ‘enum <anonymous>’ [-Wenum-compare]
ASSIGN_EXECMODE( ASSIGN_NEXT( last_cellassign)) == CUDA_DEVICE_SINGLE) {
...
3. cd sac2c; make
Linking bin/sac2c-d (developer version)
'/home/sac/.sac2crc' not found or not readable, skipping.
MT_MODE = 0 in target, forcing -numthreads to 1.
'/home/sac/.sac2crc' not found or not readable, skipping.
MT_MODE = 0 in target, forcing -numthreads to 1.
'/home/sac/.sac2crc' not found or not readable, skipping.
MT_MODE = 0 in target, forcing -numthreads to 1.
'/home/sac/.sac2crc' not found or not readable, skipping.
MT_MODE = 0 in target, forcing -numthreads to 1.
'/home/sac/.sac2crc' not found or not readable, skipping.
MT_MODE = 0 in target, forcing -numthreads to 1.
'/home/sac/.sac2crc' not found or not readable, skipping.
MT_MODE = 0 in target, forcing -numthreads to 1.
** INFO: target 'seq' does *not* support PHM.
[I don't see the rationale for a connection between 'seq" and PHM, btw.]
4. a bit further on...
LD bin/csimt
'/home/sac/.sac2crc' not found or not readable, skipping.
'/home/sac/.sac2crc' not found or not readable, skipping.
'/home/sac/.sac2crc' not found or not readable, skipping.
'/home/sac/.sac2crc' not found or not readable, skipping.
'/home/sac/.sac2crc' not found or not readable, skipping.
'/home/sac/.sac2crc' not found or not readable, skipping.
** INFO: target 'mt_pth' does support PHM.
5, I think I had DISLIN working here before, and it still lives
in /usr/local/dislin. However, stdlib comes up with this:
Making all for target mt_pth
** Note: modules Dislin DislinBars DislinQuick DislinCanvas DislinPage DislinPlot3d DislinSystem disabled due to configuration.
6. Once I got stdlib built, I tried a few unit tests:
cd ~/sac/testsuite/optimizations/rcopt
sac2 bug1107.sac
/usr/local/lib/sac2c/18604/rt/host/seq/libsac.so: undefined reference to `SAC_HM_ShowDiagnostics'
collect2: error: ld returned 1 exit status
abort: System failed to execute shell command
abort: gcc -std=gnu99 /tmp/SAC_ZGPsKC/a.out.o
abort: -L/usr/local/lib/sac2c/18604/modlibs/host/seq
abort: -Wl,-rpath,/usr/local/lib/sac2c/18604/modlibs/host/seq
abort: -L/usr/local/lib/sac2c/18604/modlibs/host/seq
abort: -Wl,-rpath,/usr/local/lib/sac2c/18604/modlibs/host/seq -L./host/seq
abort: -Wl,-rpath,./host/seq -L/usr/local/lib/sac2c/18604/rt/host/seq
abort: -Wl,-rpath,/usr/local/lib/sac2c/18604/rt/host/seq -lArrayMod
abort: -lArrayTransformMod -lConstantsMod -lArrayArithMod -lArrayBasicsMod -lBoolMod
abort: -lScalarArithMod -lsacpreludeMod -L/usr/local/dislin
abort: -Wl,-rpath,/usr/local/dislin -L/opt/local/lib -Wl,-rpath,/opt/local/lib
abort: -lsacphmc -lsac -lsacphmc -o a.out
abort: with exit code 1
^
I am guessing that HM is for Heap Manager.
7. Let's try some other unit tests:
cd sac/testsuite/optimizations/polylib
sac2c -v0 -target seq -O3 guard_val_lt_val_S.sac -o guard_val_lt_val_S.sac.exe -check c -doawlf -nowlf -dopogo -noggs
sac@rattler:~/sac/testsuite/optimizations/polylib$ guard_val_lt_val_S.sac.exe ; echo $?guard_val_lt_val_S.sac.exe: error while loading shared libraries: libsac.so: cannot open shared object file: No such file or directory
These failures are all new post-Mull.
The host and target system is an Ubuntu 14.10LTS system.
sac2c -V
sac2c v1.00-beta (Haggis And Apple)
product rev 18604
(Tue Jul 15 15:06:15 EDT 2014 by sac)</pre>BugZillaBugZillahttps://gitlab.sac-home.org/sac-group/sac2c/-/issues/1166Typecasting fails2017-11-19T20:26:02ZArtem ShinkarovTypecasting fails| | |
| --- | --- |
| Bugzilla Link | [1124](http://bugs.sac-home.org/show_bug.cgi?id=1124) |
| Created on | Jul 10, 2014 17:57 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
| Attachments | ![feedsmall](/uploads/951458f2202c...| | |
| --- | --- |
| Bugzilla Link | [1124](http://bugs.sac-home.org/show_bug.cgi?id=1124) |
| Created on | Jul 10, 2014 17:57 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
| Attachments | ![feedsmall](/uploads/951458f2202c2c123f5d581da067ed1a/feedsmall.bmp), [rgb.sac](/uploads/4fb75265545a2cd4ec733ec00f9fabae/rgb.sac), [program.sac](/uploads/7732fcf19dde9e4ea1c9ec931d7115bd/program.sac) |
## Extended Description
<pre>Here is an experiment:
We define a type called rgb in the module called rgb.sac like this:
$ cat -n rgb.sac
1 module rgb;
2
3 export all;
4 typedef int[3] rgb;
5
6 int[.] shape (rgb[.,.] a)
7 {
8 return Array::drop ([Array::- 1], Array::shape ((int[.,.,.])a));
9 }
We also define the shape function.
Now the main progam looks like this:
$ cat -n program.sac
1 use String: {string};
2 use BMP: all;
3 use rgb: all;
4
5 rgb[.,.] my_readBMP( string name)
6 {
7 img = BMP::readBMP( name);
8 StdIO::print (Color8::shape (img));
9 b = (int[.,.,.])img;
10 StdIO::print (Array::shape (b));
11 a = (rgb[.,.])b;
12 StdIO::print (shape (a));
13 return a;
14 }
15
16 int main()
17 {
18 img = my_readBMP("feedsmall.bmp");
19 StdIO::print (shape (img));
20 return 0;
21 }
and the output of the program is this:
$ ./a.out
Dimension: 1
Shape : < 2>
<10 10 >
Dimension: 1
Shape : < 3>
<10 10 3 >
Dimension: 1
Shape : < 0>
<>
Dimension: 1
Shape : < 3>
<10 10 22851456 >
So, as you can see, the shape information after the typecast to rgb[.,.] type is wrong. If we inline the shape in rgb, the problem goes away. If we introduce object references inside the shape, the problem goes away:
int[.] shape (rgb[.,.] a)
{
sh= Array::drop ([Array::- 1], Array::shape ((int[.,.,.])a));
StdIO::print (sh);
return sh;
}
O_o</pre>BugZillaBugZillahttps://gitlab.sac-home.org/sac-group/sac2c/-/issues/1164Supporting void with-loops2017-11-19T20:25:54ZArtem ShinkarovSupporting void with-loops| | |
| --- | --- |
| Bugzilla Link | [1120](http://bugs.sac-home.org/show_bug.cgi?id=1120) |
| Created on | Mar 25, 2014 16:41 |
| Version | svn |
| OS | All |
| Architecture | All |
## Extended Description
<pre>SaC syntax allows vo...| | |
| --- | --- |
| Bugzilla Link | [1120](http://bugs.sac-home.org/show_bug.cgi?id=1120) |
| Created on | Mar 25, 2014 16:41 |
| Version | svn |
| OS | All |
| Architecture | All |
## Extended Description
<pre>SaC syntax allows void with-loops. Unfortunately they are not supported by the compiler. Here are the steps that we have identified (Artem, Bodo) to fix the problem.
1) Adjusting parser. Currently the parser doesn't support void with-loops. It has been fixed in the branch called [origin/parser-fix] with a the following syntax adjustment:
A void with-loop requires void statement of the generator which can be expressed as:
with {
(...): foo ();
}: void;
in which case foo must be void,
with {
(...) { ... }: void;
}: void;
or
with {
(...) { ... }: foo ();
}: void;
where foo is void.
2) Flattening requires adjustment. The problem is that when flattening sees expression like:
with {
(...): foo ();
}: void;
it flattens it to:
with {
(...) {tmp = foo ();}: tmp;
}: void;
and obviously dies, as there is no foo which returns one argument. Solution:
normalize generators of the void with-loop as follows:
(...): foo (); -> (...) { foo (); }: void;
(...): { ... }: expr; -> (...) { ...; expr; }: void
3) Reference parameters are not being resolved properly in the void with-loops.
use IntStack: all;
int main ()
{
s = create_stack ();
with {
([0] <= [i] <[10]) { push (s, i);}
}: void ;
return 0;
}
If the reference is local, the propagate is not being inserted. See more details compiling this example.
4) Void functions make sense only if they produce side effects. Otherwise, the code cannot ever do anything useful. That is never being checked, and if one uses a void function with no side effects in the void with-loop, our compiler just breaks. Example:
void foo (int x)
{
return;
}
int main ()
{
with {
(...): foo ();
}: void;
}
Solution: introduce a new subphase in phase 5 between ewt and l2f handle_illegal_void which checks for any remaining void function or void with-loop and generates *appropriate* error messages.</pre>BugZillaBugZilla