Thu, 08 Jan 2015 19:04:03 +0000 |
mjsousa |
Correctly analyse external<->global var compatibility when using variable sized arrays (TODO: does not yet work for FBs!)
|
changeset |
files
|
Tue, 30 Dec 2014 23:32:04 +0000 |
mjsousa |
Add comment about bug that needs to be fixed later on.
|
changeset |
files
|
Tue, 30 Dec 2014 23:31:36 +0000 |
mjsousa |
Break constant_folding_c in two classes: constant_folding_c and constant_propagation_c
|
changeset |
files
|
Tue, 30 Dec 2014 22:58:52 +0000 |
mjsousa |
Add check whether the same constant var_external variable is initialised with two (or more) different constant values.
|
changeset |
files
|
Tue, 30 Dec 2014 22:17:22 +0000 |
mjsousa |
Change algorithm for propagating VAR_GLOBAL constant values to corresponding VAR_EXTERNAL.
|
changeset |
files
|
Sun, 28 Dec 2014 22:20:08 +0000 |
mjsousa |
Disable constant propagation again (still not working correctly)
|
changeset |
files
|
Sun, 28 Dec 2014 13:29:47 +0000 |
mjsousa |
Make support for use of variables in array size declarations a command line option (off by default)
|
changeset |
files
|
Sun, 28 Dec 2014 12:05:39 +0000 |
mjsousa |
Add debug_c::print(const_value_c) for printing of const values.
|
changeset |
files
|
Sun, 28 Dec 2014 12:04:07 +0000 |
mjsousa |
Add is_undefined() method to const_value_c
|
changeset |
files
|
Sun, 28 Dec 2014 07:34:18 +0000 |
mjsousa |
Make error message more informative.
|
changeset |
files
|
Sat, 27 Dec 2014 09:41:01 +0000 |
mjsousa |
Add comments.
|
changeset |
files
|
Fri, 26 Dec 2014 17:06:02 +0000 |
mjsousa |
Add checks for use of non constant value in subranges, and lower_limit > upper_limit.
|
changeset |
files
|
Fri, 26 Dec 2014 16:36:06 +0000 |
mjsousa |
Fix previous commit (symtable operator[] must return a reference to the stored value!)
|
changeset |
files
|
Fri, 26 Dec 2014 12:43:13 +0000 |
mjsousa |
Do constant propagation of configuration/resource variables, taking into account scope of variables.
|
changeset |
files
|
Fri, 26 Dec 2014 10:09:27 +0000 |
mjsousa |
Change dsymbtable_c -> use design pattern used by C++ standard library (STL)
|
changeset |
files
|
Fri, 26 Dec 2014 09:57:02 +0000 |
mjsousa |
Change symbtable_c -> use design pattern used by C++ standard library (STL)
|
changeset |
files
|
Fri, 26 Dec 2014 09:39:18 +0000 |
mjsousa |
Remove debugging code left in by mistake.
|
changeset |
files
|
Fri, 26 Dec 2014 08:09:34 +0000 |
mjsousa |
Do constant propagation inside Configurations and Resources (required for support of extension: array [1..max] OF int); (Resources is still buggy)
|
changeset |
files
|
Thu, 25 Dec 2014 08:40:15 +0000 |
mjsousa |
Do constant folding of default initial values of datatypes.
|
changeset |
files
|
Wed, 24 Dec 2014 13:19:53 +0000 |
mjsousa |
Do constant propagation to symbolic_variables, and correctly handle constant folding and propagation of variable declarations.
|
changeset |
files
|
Wed, 17 Dec 2014 13:47:37 +0000 |
mjsousa |
When generating C code, use the const_value of a symbolic_variable when it is used in a subrange.
|
changeset |
files
|
Wed, 17 Dec 2014 13:46:36 +0000 |
mjsousa |
Small code re-organization of how const values are stored in symbol_c (can now be accessed through member functions, instead of macros)
|
changeset |
files
|
Sun, 14 Dec 2014 19:15:29 +0000 |
mjsousa |
Fix bugs introduced in previous commit (once again do constant folding of all literals in type declarations)
|
changeset |
files
|
Sun, 14 Dec 2014 18:40:20 +0000 |
mjsousa |
Do constant folding of variable's initial value (allows correct C code generation with variables in the subrange of an array declaration: ARRAY [1..max] of INT).
|
changeset |
files
|
Wed, 10 Dec 2014 12:06:45 +0000 |
mjsousa |
Delete un-used declaration.
|
changeset |
files
|
Wed, 10 Dec 2014 11:57:43 +0000 |
mjsousa |
merge
|
changeset |
files
|
Sat, 22 Nov 2014 19:30:47 +0000 |
mjsousa |
Allow variables to be used when declaring the dimension of an array.
|
changeset |
files
|
Sat, 06 Dec 2014 19:14:23 +0000 |
mjsousa |
Fix C code generation when forward references (-p command line option) is on.
|
changeset |
files
|
Sat, 06 Dec 2014 19:11:32 +0000 |
mjsousa |
Add a new pou_typename_c object to the AST to store references to previously declared Functions, FB, and Programs.
|
changeset |
files
|
Sun, 30 Nov 2014 12:49:42 +0000 |
mjsousa |
Delete unused file.
|
changeset |
files
|
Sun, 30 Nov 2014 10:27:28 +0000 |
mjsousa |
Make use of pre-parser a command line option.
|
changeset |
files
|
Sun, 30 Nov 2014 10:26:31 +0000 |
mjsousa |
Fix AST generated by parsing with preparsing switched OFF (typo in array datatypes, and fix parsing of POUs).
|
changeset |
files
|
Sat, 29 Nov 2014 21:33:30 +0000 |
mjsousa |
Fix AST generated by parsing with preparsing switched on, and allow parsing to work with preparsing off.
|
changeset |
files
|
Sat, 29 Nov 2014 20:32:11 +0000 |
mjsousa |
Fix bug introduced when adding support for relaxed datatype model: change derived_datatype_identifier_c to identifier_c when used as an identifier
|
changeset |
files
|
Sat, 29 Nov 2014 13:43:20 +0000 |
mjsousa |
Add a pre-parsing phase to stage1_2 (allows source code that references POUs and datatypes before they are declared)
|
changeset |
files
|
Sat, 29 Nov 2014 12:10:34 +0000 |
mjsousa |
Comment out unused and buggy code.
|
changeset |
files
|
Thu, 27 Nov 2014 13:26:58 +0000 |
mjsousa |
Update the comments in source code.
|
changeset |
files
|
Wed, 26 Nov 2014 19:47:54 +0000 |
mjsousa |
Fix bug introduced when adding support for relaxed datatype model. Code cleanup.
|
changeset |
files
|
Sun, 23 Nov 2014 09:41:16 +0000 |
mjsousa |
Fix main state machine in flex (states were being pushed without being poped from the stack)
|
changeset |
files
|
Sun, 16 Nov 2014 15:37:12 +0000 |
mjsousa |
merge
|
changeset |
files
|
Sun, 16 Nov 2014 14:46:52 +0000 |
mjsousa |
Make the relaxed datatype model a runtime option (off by default)
|
changeset |
files
|
Sun, 16 Nov 2014 12:54:10 +0000 |
mjsousa |
Add support for relaxed datatype model for array datatypes.
|
changeset |
files
|
Sun, 09 Nov 2014 22:02:34 +0000 |
mjsousa |
fix bug introduced a few commits ago: do not print the first char ('%') of a direct_variable_c (e.g. skip % in %IW4.2)
|
changeset |
files
|
Sat, 25 Oct 2014 13:20:10 +0100 |
mjsousa |
fix code generation when dereferencing pointers (ref_to) to arrays (ref_to_array^[5])
|
changeset |
files
|
Sat, 25 Oct 2014 13:17:12 +0100 |
mjsousa |
Fix bug: set the scope annotation in deref_operators used inside structs
|
changeset |
files
|
Sat, 25 Oct 2014 11:28:48 +0100 |
mjsousa |
Editing of error message to make it more clear.
|
changeset |
files
|
Sat, 25 Oct 2014 11:21:40 +0100 |
mjsousa |
Filling of symbol->scope annotation moved from narrow to fill_candidate_datatypes_c (became possible because narrowing of struct, array and symbolic variables is now done directly in fill_candidate_datatypes_c)
|
changeset |
files
|
Sat, 25 Oct 2014 11:15:55 +0100 |
mjsousa |
fill_candidate_datatypes_c now uses search_varinstance_decl_c instead of search_varfb_instance_type_c (moving towards deprecation of search_varfb_instance_type_c)
|
changeset |
files
|
Sun, 19 Oct 2014 21:30:58 +0100 |
mjsousa |
Do the full fill_candidate/narrow_datatype algorithm for all fields of a structured variable in the fill_candidate_datatypes_c
|
changeset |
files
|
Sun, 19 Oct 2014 11:53:36 +0100 |
mjsousa |
Fix bug with multple dereferencing (bool_var := bool_ptr_ptr^^;)
|
changeset |
files
|
Sun, 19 Oct 2014 08:36:49 +0100 |
mjsousa |
Fix bug: Add support for de-referencing pointers to struct (struct_ptr^.elem1) when used inside FB.
|
changeset |
files
|
Sun, 28 Sep 2014 17:48:42 +0100 |
mjsousa |
Fix bug: add support for dereferencing of REF_TO to REF_TO xxx (e.g.: bool_var := ref_to_ref_to_bool^^;)
|
changeset |
files
|
Sun, 28 Sep 2014 17:39:28 +0100 |
mjsousa |
Turn support of derefencing operator '^' an option (default is not supported).
|
changeset |
files
|
Sun, 28 Sep 2014 16:35:44 +0100 |
mjsousa |
Add support for de-referencing of REF_TO datatypes (Note: dereferencing of arrays and structs not yet supported!)
|
changeset |
files
|
Sat, 27 Sep 2014 20:09:19 +0100 |
mjsousa |
Add support for REF_TO inside arrays and structs (a non-standard feature!)
|
changeset |
files
|
Mon, 11 Aug 2014 08:07:12 +0100 |
mjsousa |
Code cleanup: with the introduction of anotation_map[], generate_c_vardecl_c can now derive directly from generate_c_base_c
|
changeset |
files
|
Mon, 11 Aug 2014 07:56:00 +0100 |
mjsousa |
Fix typos in comments
|
changeset |
files
|
Mon, 11 Aug 2014 07:55:11 +0100 |
mjsousa |
Add comments, and make get_datatype_id_str_c equivalent to get_datatype_id_c
|
changeset |
files
|
Mon, 11 Aug 2014 07:22:37 +0100 |
mjsousa |
Fix calling of functions whose parameters are of an implicitly declared datatype (currently only makes sense for REF_TO datatypes, but may make sense to other datatypes too if the datatype model is changed in the future).
|
changeset |
files
|
Sun, 10 Aug 2014 08:51:33 +0100 |
mjsousa |
fix indentations.
|
changeset |
files
|
Sun, 10 Aug 2014 08:27:28 +0100 |
mjsousa |
in lvalue, add check for REF() fucntion invocation, and the NULL literal
|
changeset |
files
|
Sat, 09 Aug 2014 11:22:57 +0100 |
mjsousa |
Initialise REF_TO variables to NULL.
|
changeset |
files
|
Sat, 09 Aug 2014 10:12:38 +0100 |
mjsousa |
Make support for REF_TO ANY a command line option.
|
changeset |
files
|
Sat, 09 Aug 2014 09:20:03 +0100 |
mjsousa |
Add support for non standard REF_TO ANY (equivalent to void *)
|
changeset |
files
|