Re: XRM 33: Add constant propagation for builtins.

"SIGOURE" == SIGOURE Benoit <sigoure.benoit@lrde.epita.fr> writes:
https://svn.lrde.epita.fr/svn/xrm/trunk Index: ChangeLog from SIGOURE Benoit <sigoure.benoit@lrde.epita.fr>
Add constant propagation for builtins. Some C code was needed to implement easily and efficiently some operations on reals. The --pp-prism|-P option of xrm-front was removed and replaced by --add-pos> -P. The reason for this is that xrm-front takes PRISM code as input and was producing PRISM AST as output, which is a bit inconsistent. So the default is now to produce PRISM source code. addPosInfo is now only invoked with --add-pos|-P because it is very inefficient and introduces a big memory/time penalty. On big inputs it will even get killed by the system.
* src/lib/xrm/Makefile.am: Remove useless include. * src/lib/Makefile.am: Ditto. * src/lib/prism/Makefile.am: Ditto. * src/syn/Makefile.am: Ditto. * src/lib/native: New. * src/lib/native/floor.c: New. * src/lib/native/libstr-reals.h: New. * src/lib/native/Makefile.am: New. * src/lib/native/ceil.c: New. * src/lib/native/power.c: New. * src/str/xrm-front.str: Change the -P option to be --add-pos. * src/str/Makefile.am: Use libstr-reals. * src/str/prism-desugar.str: Add builtins desugarisation. * src/str/reals.str: Add more new strategies using libstr-reals. * src/syn/prism/PRISM-MetaVars.sdf: Update the meta-var `a*'. * src/Makefile.am: Build the `lib' subdir before `str'. * tests/test-pp-prism.sh.in: Save the reason of the failing tests. * tests/test-xrm-front.sh.in: Ditto. * tests/test-parse-xrm.sh.in: Ditto. * tests/test-parse-prism.sh.in: Ditto. * tests/test-pp-xrm.sh.in: Ditto. * tests/xrm/desugar_builtins.pm: New. * configure.ac: Add src/lib/native/Makefile's generation. * bootstrap (svn:executable): Mark as executable.
C'est cool tout ça ! On dirait que tu t'interdis les fonctions shell, c'est une erreur. En particulier on dirait que tes scripts test-* pourraient être factorisés.

On 2006-06-01, Akim Demaille <akim@lrde.epita.fr> wrote:
"SIGOURE" == SIGOURE Benoit <sigoure.benoit@lrde.epita.fr> writes:
https://svn.lrde.epita.fr/svn/xrm/trunk Index: ChangeLog from SIGOURE Benoit <sigoure.benoit@lrde.epita.fr>
Add constant propagation for builtins. Some C code was needed to implement easily and efficiently some operations on reals. The --pp-prism|-P option of xrm-front was removed and replaced by --add-pos> -P. The reason for this is that xrm-front takes PRISM code as input and was producing PRISM AST as output, which is a bit inconsistent. So the default is now to produce PRISM source code. addPosInfo is now only invoked with --add-pos|-P because it is very inefficient and introduces a big memory/time penalty. On big inputs it will even get killed by the system.
* src/lib/xrm/Makefile.am: Remove useless include. * src/lib/Makefile.am: Ditto. * src/lib/prism/Makefile.am: Ditto. * src/syn/Makefile.am: Ditto. * src/lib/native: New. * src/lib/native/floor.c: New. * src/lib/native/libstr-reals.h: New. * src/lib/native/Makefile.am: New. * src/lib/native/ceil.c: New. * src/lib/native/power.c: New. * src/str/xrm-front.str: Change the -P option to be --add-pos. * src/str/Makefile.am: Use libstr-reals. * src/str/prism-desugar.str: Add builtins desugarisation. * src/str/reals.str: Add more new strategies using libstr-reals. * src/syn/prism/PRISM-MetaVars.sdf: Update the meta-var `a*'. * src/Makefile.am: Build the `lib' subdir before `str'. * tests/test-pp-prism.sh.in: Save the reason of the failing tests. * tests/test-xrm-front.sh.in: Ditto. * tests/test-parse-xrm.sh.in: Ditto. * tests/test-parse-prism.sh.in: Ditto. * tests/test-pp-xrm.sh.in: Ditto. * tests/xrm/desugar_builtins.pm: New. * configure.ac: Add src/lib/native/Makefile's generation. * bootstrap (svn:executable): Mark as executable.
C'est cool tout ça !
On dirait que tu t'interdis les fonctions shell, c'est une erreur. En particulier on dirait que tes scripts test-* pourraient être factorisés.
C'est pas portable ;P Bon je rajoute ca dans ma TODO list ;) -- SIGOURE Benoit aka Tsuna _____ /EPITA\ Promo 2008.CSI Rock & tRoll

"Tsuna" == Tsuna <tsuna@warszawa.lrde.epita.fr> writes:
[Fonctions shell]
C'est pas portable ;P
Si si, depuis longtemps pour les architectures qui nous intéressent. Par ailleurs, Autoconf se le permet : c'est un signe qui ne trompe pas ça !
Bon je rajoute ca dans ma TODO list ;)
Good :)
participants (2)
-
Akim Demaille
-
Tsuna