Skip to content

Commit

Permalink
Fix for #2947:
Browse files Browse the repository at this point in the history
- Optimized usage of BackendDAE.VARIABLES in the backend to improve performance.
- Some cleaning up.


git-svn-id: https://openmodelica.org/svn/OpenModelica/trunk@23275 f25d12d1-65f4-0310-ae8a-bbce733d8d8e
  • Loading branch information
perost committed Nov 7, 2014
1 parent da98a1f commit 89f0013
Show file tree
Hide file tree
Showing 16 changed files with 1,054 additions and 1,736 deletions.
2 changes: 1 addition & 1 deletion Compiler/BackEnd/BackendDAE.mo
Expand Up @@ -151,7 +151,7 @@ end BackendDAEType;
public
uniontype Variables
record VARIABLES
array<list<CrefIndex>> crefIdxLstArr "HashTB, cref->indx";
array<list<CrefIndex>> crefIndices "HashTB, cref->indx";
VariableArray varArr "Array of variables";
Integer bucketSize "bucket size";
Integer numberOfVars "no. of vars";
Expand Down
847 changes: 351 additions & 496 deletions Compiler/BackEnd/BackendDAECreate.mo

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion Compiler/BackEnd/BackendDAEOptimize.mo
Expand Up @@ -1892,7 +1892,7 @@ protected
algorithm
BackendDAE.EQSYSTEM(orderedVars=vars1, orderedEqs=eqs1, stateSets=stateSets) := syst1;
BackendDAE.EQSYSTEM(orderedVars=vars2, orderedEqs=eqs2, stateSets=statSets1) := syst2;
vars := BackendVariable.addVars(BackendVariable.varList(vars2), vars1);
vars := BackendVariable.mergeVariables(vars2, vars1);
eqs := BackendEquation.addEquations(BackendEquation.equationList(eqs2), eqs1);
stateSets := listAppend(stateSets, statSets1);
syst := BackendDAE.EQSYSTEM(vars, eqs, NONE(), NONE(), BackendDAE.NO_MATCHING(), stateSets, BackendDAE.UNKNOWN_PARTITION());
Expand Down

0 comments on commit 89f0013

Please sign in to comment.