Directory Compiler/susan_codegen/

Total Files:
17
Deleted Files:
1
Lines of Code:
11425

[root]/Compiler/susan_codegen
            Folder removed from repo SimCode (0 files, 0 lines)
                Folder removed from repo GenTest (0 files, 0 lines)
                    Folder removed from repo HelloWorld (0 files, 0 lines)
                    Folder removed from repo Influenza (0 files, 0 lines)
                    Folder removed from repo QHP (0 files, 0 lines)
                    Folder removed from repo RightHeartStarling (0 files, 0 lines)
                    Folder removed from repo TrapezTest (0 files, 0 lines)
            directory in repo doc (5 files, 5966 lines)

Lines of Code

Compiler/susan_codegen/ Lines of Code

Developers

Author Changes Lines of Code Lines per Change
Totals 199 (100.0%) 36527 (100.0%) 183.5
sjoelund.se 111 (55.8%) 13525 (37.0%) 121.8
adrpo 15 (7.5%) 10568 (28.9%) 704.5
ppriv 54 (27.1%) 9654 (26.4%) 178.7
hudson 14 (7.0%) 2718 (7.4%) 194.1
perost 5 (2.5%) 62 (0.2%) 12.4

Most Recent Commits

sjoelund.se 2014-11-02 19:19 Rev.: 23136

Susan: Handle builtin uniontypes

1 lines of code changed in 2 files:

  • Compiler/susan_codegen: TplCodegen.mo (del), TplCodegen.tpl (+1)
sjoelund.se 2014-10-28 16:30 Rev.: 23007

Replace `Util.if_` with if-expressions

1 lines of code changed in 1 file:

  • Compiler/susan_codegen: TplCodegen_handMade.mo (+1 -2)
sjoelund.se 2014-10-21 11:49 Rev.: 22831

- Added support for a new annotation `__OpenModelica_Interface`, and the corresponding scripting function `checkInterfaceOfPackages`
- Using this function and annotating every source package, it is possible to restrict and document which packages are part of the front-end and which are back-end modules
- The interface types are given in the call to `checkInterfaceOfPackages`
- Currently, too many packages have the backendInterface type (allowing front-end modules to call it even though it is a back-end module. Only one package should be a backendInterface once we refactor)
- Improved Susan to be able to insert a custom class annotation at the end of the class (so we automatically add the required `__OpenModelica_Interface` packages)
- Note that this requires installing an updated omc in order to compile susan files. (or run touch Compiler/Template/*.mo to skip trying to compile these, then touch the tpl files once you have an updated susan compiler)
- Improved SCodeDumpTpl to include non-blacklisted class annotations without +showAnnotations
- Removed the non-standard built-in function differentiate (re-add it as a scripting function if needed, or using bootstrapping tests to test differentiation)

752 lines of code changed in 7 files:

  • Compiler/susan_codegen: TplCodegen.mo (+7 -5), TplCodegen.tpl (+2 -2), TplCodegenTV.mo (+2), TplCodegen__testShouldBe.mo (+143 -302), paper.mo (+1 -515), test.mo (+596 -665), test.tpl (+1 -1)
sjoelund.se 2014-04-25 13:19 Rev.: 20263

Avoid using the susan_codegen directory since it does not use the configured OMC

0 lines of code changed in 2 files:

  • Compiler/susan_codegen: Makefile (-5), TplCodegen.mo (-30)
sjoelund.se 2014-04-15 10:03 Rev.: 20143

Updated copyright notices to 2014
- The script uses regex to update copyright notices since we have different years in there

30 lines of code changed in 1 file:

  • Compiler/susan_codegen: TplCodegen.mo (+30)
perost 2013-12-02 12:34 Rev.: 18367

Fix for #2496:
- Fixed code generation for arrays in Susan.

3 lines of code changed in 2 files:

  • Compiler/susan_codegen: TplCodegen.mo (+2 -1), TplCodegen.tpl (+1 -1)
sjoelund.se 2013-05-02 21:17 Rev.: 15963

Revert r15962 (accidently replaced 8 spaces with 2 spaces; was supposed to be 1 tab to 2 spaces but text editors messed up the command)
Contact me if you have problems merging your working copy

2716 lines of code changed in 12 files:

  • Compiler/susan_codegen: SusanDump.mo (+23 -23), SusanDump.tpl (+11 -11), TplCodegen.mo (+662 -662), TplCodegen.tpl (+19 -19), TplCodegen__testShouldBe.mo (+709 -709), TplCodegen_handMade.mo (+115 -115), paper.mo (+122 -122), paper__testShouldBe.mo (+122 -122), test.mo (+453 -453), test.tpl (+23 -23), testI.mo (+4 -4), test__testShouldBe.mo (+453 -453)
hudson 2013-05-02 20:46 Rev.: 15962

[Janitor mode] Fix tabs

2716 lines of code changed in 12 files:

  • Compiler/susan_codegen: SusanDump.mo (+23 -23), SusanDump.tpl (+11 -11), TplCodegen.mo (+662 -662), TplCodegen.tpl (+19 -19), TplCodegen__testShouldBe.mo (+709 -709), TplCodegen_handMade.mo (+115 -115), paper.mo (+122 -122), paper__testShouldBe.mo (+122 -122), test.mo (+453 -453), test.tpl (+23 -23), testI.mo (+4 -4), test__testShouldBe.mo (+453 -453)
hudson 2013-04-30 14:51 Rev.: 15938

[Janitor mode] Set auto-props

2 lines of code changed in 2 files:

  • Compiler/susan_codegen: SimCode_design.txt (+1), SusanGrammar.txt (+1)
sjoelund.se 2013-03-06 13:12 Rev.: 15486

Trim trailing whitespace

734 lines of code changed in 16 files:

  • Compiler/susan_codegen: SimCode_design.txt (+6 -6), SusanDump.mo (+4 -4), SusanDump.tpl (+33 -33), SusanGrammar.txt (+172 -172), TplCodegen.tpl (+44 -44), TplCodegenTV.mo (+72 -72), TplCodegen__testShouldBe.mo (+1 -1), TplCodegen_handMade.mo (+278 -278), paper.mo (+1 -1), paper.tpl (+6 -6), paperI.mo (+6 -6), paper__testShouldBe.mo (+1 -1), test.mo (+1 -1), test.tpl (+100 -100), testI.mo (+8 -8), test__testShouldBe.mo (+1 -1)
ppriv 2013-02-16 12:45 Rev.: 15196

- Susan does not generate unreachable match cases for map expressions (a clean-up)

0 lines of code changed in 1 file:

  • Compiler/susan_codegen: TplCodegen.mo (-185)
ppriv 2013-02-16 10:44 Rev.: 15195

- Susan uses "match" instead "matchcontinue" in generated template code
- this is for Hudson test (I've tested locally that terstsuite run the same)
Be aware: template imported functions MUST NOT fail to render the running template (imported functions are those imported via SimCodeTV.mo), otherwise the whole template call fails


114 lines of code changed in 2 files:

  • Compiler/susan_codegen: TplCodegen.mo (+112 -112), TplCodegen.tpl (+2 -2)
sjoelund.se 2013-01-26 14:55 Rev.: 14956

Print longer filenames when running the testsuite (no more "which package.mo should I look in?")

2 lines of code changed in 1 file:

  • Compiler/susan_codegen: TplCodegen.mo (+2 -6)
sjoelund.se 2013-01-02 13:22 Rev.: 14618

- Removed $Id$ from generated code (this should reduce number of times svn diff says you changed generated files)

1 lines of code changed in 2 files:

  • Compiler/susan_codegen: TplCodegen.mo (+1 -3), TplCodegen.tpl (-2)
ppriv 2012-08-17 13:19 Rev.: 12561

The Second part of the potentially buggy places in .tpl files due to the (confusing) semantics of iteration expressions and the "empty" option
- made explicit "empty" option on all the suspicious places (those that are not obvious to produce an output for every iteration)
- CodegenC.tpl and CodegenCPP.tpl covered so far
- some small code styling in CodegenCPP.tpl

8 lines of code changed in 1 file:

  • Compiler/susan_codegen: SusanGrammar.txt (+8 -8)
ppriv 2012-07-19 20:35 Rev.: 12349

Cleaning of the internal stuff out of the susan_codegen/
- delete susan_codegen/SimCode
- move SimCode_design.txt to susan_codegen/

5 lines of code changed in 1 file:

  • Compiler/susan_codegen: SimCode_design.txt (new 5)
perost 2012-03-26 12:56 Rev.: 11538

- Got rid of tabs.

59 lines of code changed in 3 files:

  • Compiler/susan_codegen: SusanDump.tpl (+14 -14), paper.tpl (+4 -4), test.tpl (+41 -41)
sjoelund.se 2012-03-26 11:40 Rev.: 11536

- Fixed the encoding of the remaining files (added .tpl, fixed some illegal chars in interactive)

4 lines of code changed in 1 file:

  • Compiler/susan_codegen: test.tpl (+4 -4)
sjoelund.se 2012-03-26 11:17 Rev.: 11531

- Converted some files to UTF-8

8 lines of code changed in 2 files:

  • Compiler/susan_codegen: test.mo (+4 -4), test__testShouldBe.mo (+4 -4)
sjoelund.se 2012-03-13 08:54 Rev.: 11398

- Remove some tabs from sources

388 lines of code changed in 3 files:

  • Compiler/susan_codegen: TplCodegenTV.mo (+331 -331), paperI.mo (+33 -33), testI.mo (+24 -24)
sjoelund.se 2012-02-09 10:04 Rev.: 11047

- OSX cp doesn't have -u

2 lines of code changed in 1 file:

  • Compiler/susan_codegen: Makefile (+2 -2)
sjoelund.se 2012-01-19 11:44 Rev.: 10923

- EOL style on templates

557 lines of code changed in 4 files:

  • Compiler/susan_codegen: SusanDump.tpl (+243 -242), TplCodegen.tpl (+312 -311), paper.tpl (+1), test.tpl (+1)
sjoelund.se 2011-05-31 12:52 Rev.: 9216

- Fix unparsing of MSL 3.2

5 lines of code changed in 1 file:

  • Compiler/susan_codegen: TplCodegen.mo (+5 -5)
sjoelund.se 2011-04-11 11:33 Rev.: 8580

- Add class comments in Susan-generated code

31 lines of code changed in 2 files:

  • Compiler/susan_codegen: TplCodegen.mo (+24), TplCodegen.tpl (+7)
sjoelund.se 2011-04-11 11:16

- svn:keywords

22 lines of code changed in 22 files:

  • Compiler/susan_codegen: SusanDump.mo (+1 -1), TplCodegen.mo (+1), TplCodegenTV.mo (+1 -1), TplCodegen__testShouldBe.mo (+1 -1), TplCodegen_handMade.mo (+1 -1), paper.mo (+1 -1), paperI.mo (+1), paper__testShouldBe.mo (+1), test.mo (+1), testI.mo (+1), test__testShouldBe.mo (+1 -1)
ppriv 2011-04-07 17:17 Rev.: 8539

!! this update will most likely need 'clean' or deletion of omc.exe as your old Susan parser will complain on the updated SimCodeC.tpl ... sorry for the inconvenience
- Susan keyword 'from' is changed to 'fromindex' (according to the last Susan specification)
- some other errors are now reported with correct source location (string conversion, argument type check, options type check, function/template lookup).

2 lines of code changed in 1 file:

  • Compiler/susan_codegen: SusanGrammar.txt (+2 -2)
sjoelund.se 2011-04-05 14:17 Rev.: 8498

- Made code pretty

148 lines of code changed in 5 files:

  • Compiler/susan_codegen: SusanDump.mo (+6 -6), TplCodegenTV.mo (+11 -11), TplCodegen_handMade.mo (+126 -126), paperI.mo (+3 -3), testI.mo (+2 -2)
sjoelund.se 2011-03-04 10:22 Rev.: 8077

- Fixed line endings of several files

2 lines of code changed in 2 files:

  • Compiler/susan_codegen: paperI.mo (+1), testI.mo (+1)
sjoelund.se 2011-01-10 13:19 Rev.: 7671

- Started removing pattern inputs that are never used (OMC dead code):
case (1,_) ... case (2,_) => case 1 ... case 2
- We have a lot of these because of RML forces us to put all inputs of the function as the inputs of a match-expression
- This makes more match-expressions simplify into if-expressions
- Made all packages encapsulated (and fixed Susan so it outputs encapsulated packages)
- This should make dependency analysis on OMC work better

82 lines of code changed in 2 files:

  • Compiler/susan_codegen: TplCodegen.mo (+69 -65), TplCodegen.tpl (+13 -14)
sjoelund.se 2011-01-09 19:37 Rev.: 7667

- Tabs to spaces

64 lines of code changed in 1 file:

  • Compiler/susan_codegen: TplCodegen.mo (+64 -64)
sjoelund.se 2011-01-09 17:37 Rev.: 7666

- Reverting tab changes to Template/*.mo as Susan needs them

385 lines of code changed in 3 files:

  • Compiler/susan_codegen: TplCodegenTV.mo (+330 -330), paperI.mo (+32 -32), testI.mo (+23 -23)
sjoelund.se 2011-01-07 10:33 Rev.: 7662

- Replaced tab characters with 2 spaces (mostly in C sources since Eclipse/MDT usually manages to avoid using tabs)
$ svn diff Compiler/ | grep ^- | grep -v ^--- | wc -l
4771
$ svn diff c_runtime/ | grep ^- | grep -v ^--- | wc -l
13365
$ svn diff OMNotebook/ | grep ^- | grep -v ^--- | wc -l
17341
$ svn diff OMShell/ | grep ^- | grep -v ^--- | wc -l
582

385 lines of code changed in 5 files:

  • Compiler/susan_codegen: TplCodegenTV.mo (+330 -330), paperI.mo (new), testI.mo (+23 -23)
adrpo 2010-12-13 08:21 Rev.: 7369

Fixes for task: #1344
- split into directories: FrontEnd BackEnd Template Script Util Main
- only working on OMDev MinGW Windows right now, I'm working on the Linux part.

1 lines of code changed in 1 file:

  • Compiler/susan_codegen: Makefile (+1 -1)
ppriv 2010-11-26 00:54 Rev.: 7192

- Susan now:
- translates case local names into function wide local names
and has nicer name prefixes to have more easily distinguishable origins of the generated identifiers
- respects full 'hasindex' semantics with a new keyword 'from' added that is used instead of indexOffset= option
new syntax is:
lst |> elem hasindex myIndex3 from 3 => '<%elem%><%myIndex3%>'
the 'from' keyword is optional (and can only together with 'hasindex'); default is 0
- does not hide implicitly scoped patterned matched record fields in 'if' expressions (only directly tested implicitly scoped values was visible after 'then' till now)
- has much better 'let' scoping, to be continued ...
- has better emptiness testing of Texts in 'if' expressions (does direct Text value test for emptiness instead of translating it to string)
- reports better errors for options; mainly does not allow a typo in option names and non-sense options are errors now

- SimCodeC.tpl
- rewritten to respect the new 'hasindex' ['from'] syntax
- fixed a typo 'seprator' -> 'separator'
- in template initRecordMembers() fixed RECORD to RECORD(__)
- in template patternMatch() in case PAT_CALL(__) fixed placement of empty= option (to be removed later entirely for this context)

1011 lines of code changed in 6 files:

  • Compiler/susan_codegen: SusanGrammar.txt (+10 -4), TplCodegen.mo (+476 -667), TplCodegen.tpl (+3 -7), TplCodegenTV.mo (+1 -1), TplCodegen__testShouldBe.mo (+476 -667), test.tpl (+45 -4)
ppriv 2010-11-17 14:31 Rev.: 7064

- Susan updated tests to be all OK
- C# codegen for non-linear strong components

109 lines of code changed in 5 files:

  • Compiler/susan_codegen: TplCodegen__testShouldBe.mo (+31 -35), paper.mo (+5 -7), paper__testShouldBe.mo (+5 -7), test.mo (+34 -36), test__testShouldBe.mo (+34 -36)
sjoelund.se 2010-11-14 14:56 Rev.: 7015

- Susan update
- Use Tpl.emptyTxt in the templates instead of a protected constant (bootstrapped OMC could not find it)

0 lines of code changed in 2 files:

  • Compiler/susan_codegen: TplCodegen.mo (-4), TplCodegen.tpl (-2)
sjoelund.se 2010-09-21 12:34 Rev.: 6159

- Fix svn-eol-style on Makefiles

14 lines of code changed in 1 file:

  • Compiler/susan_codegen: Makefile (+14 -13)
ppriv 2010-07-26 19:01 Rev.: 5881

- fixes to make slicing like
a[1,:] := a[:];
and/or
a[2:3,2] := x[2:3];
work:
- fixed code in indexed_assign_real_array(), index_real_array() and index_alloc_real_array()
- fixed daeExpCrefRhsIndexSpec() template to generate "zero" dimension size for scalar subscripts for INDEX case:
(0), make_index_array(1, <%expPart%>), 'S'
- added test ArrayAssignWholeDim.mo; but it should be moved to mosfiles to ensure C-runtime invocation
TODO: the same should be done for integer_array.c; then the character slice coding, i.e. 'S','A','W', can be removed entirely;
or, perhaps, the slicing operation can be generated inline as appropriate nested for loops (I'll do that for C# generator, then it may be ported back to C++)
- fixed daeExpAsub() template for _get_1D() .. _get_4D() constant index cases ... decremented indexes, because the _get_#D() functions works with zero based indexes
- commented out #include "utility.h" in simulation_events.cpp to enable debugging in Visual Studio
- added NO_INTERACTIVE_DEPENDENCY macro switch used in simulation_runtime.cpp for simpler compilation of simulation runtime in Visual Studio
- added SimCode.cref2simvar(ComponentRef,SimCode)->SimVar function and daeLow field into SimCode.SIMCODE record to enable lookup of representation arrays in templates (C#);
note that only cref2simvar() is visible from templates, but not the daeLow field which is not added to SimCodeTV.mo;
the function needs a SimCode value as a whole, so the implementation is effectively hidden from templates' viewpoint;
BUT, this is only a workaround for the lack of the needed information in component references themselves (hope they will have it in the future);
see usage of cref2simvar() in SimCodeCSharp.tpl
- added extern int const specifiers in functionStoreDelayed C++ template to resolve a link problem in VC++
- renamed local identifiers named cref to cr or ecr (ecr when of type DAE.Exp) in the C++ templates to disambiguate them from cref() template name (will be checked in the future; now value binding names and template names has separate name scopes, but that will be changed in the next versions of Susan);
maybe the cref() template should be renamed to compRef() because there exist fields named cref in SimCodeTV.mo
- simplified several constructs like '<%val%>' to just val and/or like (libs |> lib => lib) to just (libs) in C++ templates
- re-factored some case clauses when they shared the same then part (Susan can have "or" cases,e.g.: case PAT1 case PAT2 case PAT3 then tplExpr ... where the same tplExpr is lexically used for every given case)
- renamed subscriptsTpl() and subscriptTpl() templates to more suitable names subscriptsStr() and subscriptStr()
- added many improvements in C# code generator
- changed some make commands for Susan/C# codegen testing
- added testmo make command to Makefile.common

155 lines of code changed in 3 files:

  • Compiler/susan_codegen: Makefile (+5 -1), SusanGrammar.txt (+134 -11), test.tpl (+16)
sjoelund.se 2010-06-11 12:14 Rev.: 5643

- Added automatic regeneration of TplCodegen.mo if the template changes

6 lines of code changed in 1 file:

  • Compiler/susan_codegen: Makefile (+6 -3)
sjoelund.se 2010-05-31 09:43 Rev.: 5589

- Added Unix make target "fix-svn-eol-style"
- Fixed line ending for all .mo and .mos-files in Compiler/ and testsuite/

7185 lines of code changed in 9 files:

  • Compiler/susan_codegen: SusanDump.mo (+73 -72), TplCodegen.mo (+2528 -2527), TplCodegenTV.mo (+347 -346), TplCodegen__testShouldBe.mo (+1), TplCodegen_handMade.mo (+1538 -1537), paper.mo (+517 -516), paper__testShouldBe.mo (+1), test.mo (+2179 -2178), test__testShouldBe.mo (+1)

(9 more)

Generated by StatSVN 0.7.0