Commit graph

188 commits

Author SHA1 Message Date
Adrien Guatto ec0274cc82 C backend: do not inline consts by default. 2012-02-08 17:49:21 +01:00
Adrien Guatto fa09d86dc1 Unrolling in C backend. 2012-02-08 17:47:28 +01:00
Adrien Guatto 76ae2f4518 Loop unrolling. 2012-02-08 16:16:41 +01:00
Adrien Guatto 998b3b0b89 Generate C89 2012-01-25 12:42:14 +01:00
Léonard Gérard b86555e013 global env misc 2011-12-12 11:08:47 +01:00
Cédric Pasteur 54cde301f6 C code generation for printf 2011-12-12 10:36:24 +01:00
Adrien Guatto 0f71dbe145 Bitwise or. 2011-12-06 17:46:35 +01:00
Adrien Guatto 8d772e20e2 Bitwise and. 2011-12-06 15:44:21 +01:00
Adrien Guatto 1ec15b9409 Bitwise operators on integers. 2011-12-06 15:44:21 +01:00
Adrien Guatto 5097c62449 C backend: put memory of the main node in a global variable. 2011-12-05 10:18:50 +01:00
Cédric Pasteur add09fe465 Fixed complexity of control optimization 2011-11-29 13:34:50 +01:00
Léonard Gérard 5be7a6acc2 java main void return handling 2011-11-25 18:56:15 +01:00
Léonard Gérard 05750352f8 pat_ty ne semble pas fiable. Voir t19.ept 2011-11-25 18:55:12 +01:00
Cédric Pasteur 3369f6dffc Don't forget to optimise control recursively 2011-11-24 16:10:14 +01:00
Léonard Gérard 57f7da94c2 Deal with const ref in Java. 2011-11-21 11:42:26 +01:00
Cédric Pasteur 641b76133d Don't inline all const 2011-11-21 10:55:53 +01:00
Léonard Gérard fdab1ac55c Strict-SSA option to switch array encoding. 2011-11-21 03:26:26 +01:00
Léonard Gérard adc47c536a Improve Java printing and main.
genToString is a fully generic to string function
dealing with arrays, primitive arrays, etc.
2011-11-21 03:26:25 +01:00
Léonard Gérard 7b281317f4 fix scalarize 2011-11-20 22:37:00 +01:00
Léonard Gérard 9d8a0be512 Improve scalarize 2011-11-18 12:33:37 +01:00
Léonard Gérard efa6b5cf70 Correct scalarize and java load_conf 2011-11-18 12:32:37 +01:00
Léonard Gérard be28156de9 Add a simplify pass to Obc 2011-11-18 12:32:37 +01:00
Léonard Gérard 9274ef24aa Java support type alias. 2011-11-18 12:32:37 +01:00
Léonard Gérard 35a9a24467 Correct obc_mapfold 2011-11-18 12:32:37 +01:00
Léonard Gérard 2a6dab836a Add alias to obc vd. 2011-11-18 12:32:37 +01:00
Léonard Gérard fa956a00ad Remarques pour Control 2011-11-18 12:32:37 +01:00
Léonard Gérard bdd85f5f81 mapfold over var_ident. 2011-11-18 12:32:36 +01:00
Léonard Gérard 3e64635f95 optimize the control at the end to maximize profit
Indeed, some examples showed that memory allocation could trigger a profit-full deadcode removal for the control. See Downscaler.down avec -flatten.
2011-11-03 00:43:36 +01:00
Léonard Gérard 919eaa72e1 Fix floating point printing. 2011-11-02 16:08:51 +01:00
Léonard Gérard 50487f9296 Fix java main to deal with unit return type. 2011-11-02 16:07:19 +01:00
Léonard Gérard 04263a126b Correct small bug in java initialized arrays. 2011-11-02 16:04:47 +01:00
Léonard Gérard ef4478e37e removed some stupid warnings. 2011-10-14 13:33:34 +02:00
Cédric Pasteur 175c8e34ff Fixed control fusion 2011-10-05 10:49:51 +02:00
Cédric Pasteur 36c1c7252e Fixed memalloc application with fields 2011-09-15 16:55:17 +02:00
Cédric Pasteur 1c43a8b1ac Fixed code generation for constant arrays 2011-09-14 09:08:28 +02:00
Cédric Pasteur 1d6b68cef6 Fix syntax for ocaml < 3.12 2011-09-09 17:03:54 +02:00
Cédric Pasteur 4d912e9349 Added more options for memalloc
There is now three options for memory allocation:
  - -only-linear activates only the linear 
annotations (with typing and code generation)
  - -only-memalloc does only memory allocation
  - -memalloc does both

When linear typing is not activated, linearity 
annotations are ignored (the signature in the .epi
does not contain the annotations)
2011-09-09 16:05:44 +02:00
Cédric Pasteur eb18342c33 Do not forget to also traverse local linear vars 2011-09-09 16:00:21 +02:00
Cédric Pasteur b0bb7ad39f Fixed problem with application of memalloc 2011-09-09 15:53:15 +02:00
Cédric Pasteur c550b09805 Fixed code generated for alias types to arrays 2011-09-09 13:54:29 +02:00
Cédric Pasteur 53043b403c Small fixes in the C backend 2011-09-07 13:24:33 +02:00
Cédric Pasteur 732a956855 Adapt to the (not so) new extvalues 2011-09-06 15:56:07 +02:00
Cédric Pasteur eec957cc6a Use underscores for generated variables 2011-09-06 14:42:34 +02:00
Cédric Pasteur 2147402a20 Const should be declared static
Otherwise the C compiler complains about multiple
definitions of the same symbol
2011-09-06 14:31:14 +02:00
Cédric Pasteur 4cd506f3db Added c ast for constant
Also print only short names for struct fields
2011-09-06 14:20:57 +02:00
Cédric Pasteur 8cc879be7a Generate code from interface (.epi) files
It includes the definition of types, constants
and prototypes defined in the interface.
2011-09-06 11:55:06 +02:00
Cédric Pasteur da8956e247 Revert changes
Bring back cvarlist_of_ovarlist with a more 
explicit name to show its specificity
2011-07-22 10:52:31 +02:00
Brice Gelineau 9fb42a5feb Removed unused functions in C generation 2011-07-21 18:01:32 +02:00
Cédric Pasteur a52e80bcad Fixed some TODOs 2011-07-21 11:54:52 +02:00
Cédric Pasteur 7d95b95ed7 Merge branch 'memalloc' into decade
Conflicts:
	compiler/global/signature.ml
	compiler/heptagon/analysis/typing.ml
	compiler/heptagon/hept_printer.ml
	compiler/heptagon/hept_utils.ml
	compiler/heptagon/heptagon.ml
	compiler/heptagon/parsing/hept_parser.mly
	compiler/heptagon/parsing/hept_parsetree.ml
	compiler/heptagon/parsing/hept_scoping.ml
	compiler/heptagon/transformations/switch.ml
	compiler/main/hept2mls.ml
	compiler/minils/minils.ml
	compiler/minils/mls_printer.ml
	compiler/obc/c/cgen.ml
	compiler/obc/control.ml
	compiler/utilities/misc.mli
2011-07-21 08:50:45 +02:00