Bug Summary

File:OMCompiler/Compiler/boot/build/CommonSubExpression.c
Warning:line 8041, column 3
Value stored to '_allCrefsAreGlobal' is never read

Annotated Source Code

[?] Use j/k keys for keyboard navigation

1#ifdef OMC_BASE_FILE
2 #define OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c" OMC_BASE_FILE
3#else
4 #define OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c" "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
5#endif
6#include "omc_simulation_settings.h"
7#include "CommonSubExpression.h"
8#define _OMC_LIT0_data"ASSIGN_CSE: eqs{" "ASSIGN_CSE: eqs{"
9static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT0,16,_OMC_LIT0_data)struct { mmc_uint_t header; const char data[(16)+1]; } _OMC_LIT_STRUCT0
= { ((((mmc_uint_t)16)<<(3))+((1<<(3+3))+5)), "ASSIGN_CSE: eqs{"
}
;
10#define _OMC_LIT0((void*)((char*)(&(_OMC_LIT_STRUCT0).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT0)((void*)((char*)(&(_OMC_LIT_STRUCT0).header) + 3))
11#define _OMC_LIT1_data", " ", "
12static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT1,2,_OMC_LIT1_data)struct { mmc_uint_t header; const char data[(2)+1]; } _OMC_LIT_STRUCT1
= { ((((mmc_uint_t)2)<<(3))+((1<<(3+3))+5)), ", "
}
;
13#define _OMC_LIT1((void*)((char*)(&(_OMC_LIT_STRUCT1).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT1)((void*)((char*)(&(_OMC_LIT_STRUCT1).header) + 3))
14#define _OMC_LIT2_data"}" "}"
15static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT2,1,_OMC_LIT2_data)struct { mmc_uint_t header; const char data[(1)+1]; } _OMC_LIT_STRUCT2
= { ((((mmc_uint_t)1)<<(3))+((1<<(3+3))+5)), "}"
}
;
16#define _OMC_LIT2((void*)((char*)(&(_OMC_LIT_STRUCT2).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT2)((void*)((char*)(&(_OMC_LIT_STRUCT2).header) + 3))
17#define _OMC_LIT3_data" sharedVars{" " sharedVars{"
18static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT3,14,_OMC_LIT3_data)struct { mmc_uint_t header; const char data[(14)+1]; } _OMC_LIT_STRUCT3
= { ((((mmc_uint_t)14)<<(3))+((1<<(3+3))+5)), " sharedVars{"
}
;
19#define _OMC_LIT3((void*)((char*)(&(_OMC_LIT_STRUCT3).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT3)((void*)((char*)(&(_OMC_LIT_STRUCT3).header) + 3))
20#define _OMC_LIT4_data" aliasVars{" " aliasVars{"
21static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT4,13,_OMC_LIT4_data)struct { mmc_uint_t header; const char data[(13)+1]; } _OMC_LIT_STRUCT4
= { ((((mmc_uint_t)13)<<(3))+((1<<(3+3))+5)), " aliasVars{"
}
;
22#define _OMC_LIT4((void*)((char*)(&(_OMC_LIT_STRUCT4).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT4)((void*)((char*)(&(_OMC_LIT_STRUCT4).header) + 3))
23#define _OMC_LIT5_data"SHORTCUT_CSE: eqs{" "SHORTCUT_CSE: eqs{"
24static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT5,18,_OMC_LIT5_data)struct { mmc_uint_t header; const char data[(18)+1]; } _OMC_LIT_STRUCT5
= { ((((mmc_uint_t)18)<<(3))+((1<<(3+3))+5)), "SHORTCUT_CSE: eqs{"
}
;
25#define _OMC_LIT5((void*)((char*)(&(_OMC_LIT_STRUCT5).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT5)((void*)((char*)(&(_OMC_LIT_STRUCT5).header) + 3))
26#define _OMC_LIT6_data" sharedVar{" " sharedVar{"
27static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT6,13,_OMC_LIT6_data)struct { mmc_uint_t header; const char data[(13)+1]; } _OMC_LIT_STRUCT6
= { ((((mmc_uint_t)13)<<(3))+((1<<(3+3))+5)), " sharedVar{"
}
;
28#define _OMC_LIT6((void*)((char*)(&(_OMC_LIT_STRUCT6).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT6)((void*)((char*)(&(_OMC_LIT_STRUCT6).header) + 3))
29#define _OMC_LIT7_data"" ""
30static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT7,0,_OMC_LIT7_data)struct { mmc_uint_t header; const char data[(0)+1]; } _OMC_LIT_STRUCT7
= { ((((mmc_uint_t)0)<<(3))+((1<<(3+3))+5)), "" }
;
31#define _OMC_LIT7((void*)((char*)(&(_OMC_LIT_STRUCT7).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT7)((void*)((char*)(&(_OMC_LIT_STRUCT7).header) + 3))
32static const MMC_DEFREALLIT(_OMC_LIT_STRUCT8,0.0)struct mmc_real_lit _OMC_LIT_STRUCT8 = {0,(((8/8) << 10
) + 9),0.0}
;
33#define _OMC_LIT8((void*)((char*)(&(_OMC_LIT_STRUCT8).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT8)((void*)((char*)(&(_OMC_LIT_STRUCT8).header) + 3))
34static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT9,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT9
= { (((8) << 10) + (((3) & 255) << 2)),
{&SourceInfo_SOURCEINFO__desc,_OMC_LIT7((void*)((char*)(&(_OMC_LIT_STRUCT7).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),_OMC_LIT8((void*)((char*)(&(_OMC_LIT_STRUCT8).header) + 3))}};
35#define _OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT9)((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3))
36static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT10,1,4)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT10
= { (((1) << 10) + (((4) & 255) << 2)),
{&DAE_ComponentPrefix_NOCOMPPRE__desc,}};
37#define _OMC_LIT10((void*)((char*)(&(_OMC_LIT_STRUCT10).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT10)((void*)((char*)(&(_OMC_LIT_STRUCT10).header) + 3))
38static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT11,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT11
= { (((8) << 10) + (((3) & 255) << 2)),
{&DAE_ElementSource_SOURCE__desc,_OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)),MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3)),_OMC_LIT10((void*)((char*)(&(_OMC_LIT_STRUCT10).header) + 3)),MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3)),MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3)),MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3)),MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))}};
39#define _OMC_LIT11((void*)((char*)(&(_OMC_LIT_STRUCT11).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT11)((void*)((char*)(&(_OMC_LIT_STRUCT11).header) + 3))
40static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT12,1,4)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT12
= { (((1) << 10) + (((4) & 255) << 2)),
{&BackendDAE_EquationKind_DYNAMIC__EQUATION__desc,}};
41#define _OMC_LIT12((void*)((char*)(&(_OMC_LIT_STRUCT12).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT12)((void*)((char*)(&(_OMC_LIT_STRUCT12).header) + 3))
42static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT13,5,3)struct { mmc_uint_t header; const void *data[5]; } _OMC_LIT_STRUCT13
= { (((5) << 10) + (((3) & 255) << 2)),
{&BackendDAE_EvaluationStages_EVALUATION__STAGES__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0)))}};
43#define _OMC_LIT13((void*)((char*)(&(_OMC_LIT_STRUCT13).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT13)((void*)((char*)(&(_OMC_LIT_STRUCT13).header) + 3))
44static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT14,4,3)struct { mmc_uint_t header; const void *data[4]; } _OMC_LIT_STRUCT14
= { (((4) << 10) + (((3) & 255) << 2)),
{&BackendDAE_EquationAttributes_EQUATION__ATTRIBUTES__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),_OMC_LIT12((void*)((char*)(&(_OMC_LIT_STRUCT12).header) + 3)),_OMC_LIT13((void*)((char*)(&(_OMC_LIT_STRUCT13).header) + 3))}};
45#define _OMC_LIT14((void*)((char*)(&(_OMC_LIT_STRUCT14).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT14)((void*)((char*)(&(_OMC_LIT_STRUCT14).header) + 3))
46static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT15,1,3)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT15
= { (((1) << 10) + (((3) & 255) << 2)),
{&BackendDAE_BaseClockPartitionKind_UNKNOWN__PARTITION__desc,}};
47#define _OMC_LIT15((void*)((char*)(&(_OMC_LIT_STRUCT15).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT15)((void*)((char*)(&(_OMC_LIT_STRUCT15).header) + 3))
48static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT16,1,5)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT16
= { (((1) << 10) + (((5) & 255) << 2)),
{&BackendDAE_IndexType_SOLVABLE__desc,}};
49#define _OMC_LIT16((void*)((char*)(&(_OMC_LIT_STRUCT16).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT16)((void*)((char*)(&(_OMC_LIT_STRUCT16).header) + 3))
50static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT17,1,3)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT17
= { (((1) << 10) + (((3) & 255) << 2)),
{&BackendDAE_IndexType_ABSOLUTE__desc,}};
51#define _OMC_LIT17((void*)((char*)(&(_OMC_LIT_STRUCT17).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT17)((void*)((char*)(&(_OMC_LIT_STRUCT17).header) + 3))
52static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT18,1,5)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT18
= { (((1) << 10) + (((5) & 255) << 2)),
{&AvlSetInt_Tree_EMPTY__desc,}};
53#define _OMC_LIT18((void*)((char*)(&(_OMC_LIT_STRUCT18).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT18)((void*)((char*)(&(_OMC_LIT_STRUCT18).header) + 3))
54#define _OMC_LIT19_data"$cseb" "$cseb"
55static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT19,5,_OMC_LIT19_data)struct { mmc_uint_t header; const char data[(5)+1]; } _OMC_LIT_STRUCT19
= { ((((mmc_uint_t)5)<<(3))+((1<<(3+3))+5)), "$cseb"
}
;
56#define _OMC_LIT19((void*)((char*)(&(_OMC_LIT_STRUCT19).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT19)((void*)((char*)(&(_OMC_LIT_STRUCT19).header) + 3))
57#define _OMC_LIT20_data" - cse binary expression: " " - cse binary expression: "
58static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT20,27,_OMC_LIT20_data)struct { mmc_uint_t header; const char data[(27)+1]; } _OMC_LIT_STRUCT20
= { ((((mmc_uint_t)27)<<(3))+((1<<(3+3))+5)), " - cse binary expression: "
}
;
59#define _OMC_LIT20((void*)((char*)(&(_OMC_LIT_STRUCT20).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT20)((void*)((char*)(&(_OMC_LIT_STRUCT20).header) + 3))
60#define _OMC_LIT21_data" (counter: " " (counter: "
61static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT21,11,_OMC_LIT21_data)struct { mmc_uint_t header; const char data[(11)+1]; } _OMC_LIT_STRUCT21
= { ((((mmc_uint_t)11)<<(3))+((1<<(3+3))+5)), " (counter: "
}
;
62#define _OMC_LIT21((void*)((char*)(&(_OMC_LIT_STRUCT21).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT21)((void*)((char*)(&(_OMC_LIT_STRUCT21).header) + 3))
63#define _OMC_LIT22_data", id: " ", id: "
64static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT22,6,_OMC_LIT22_data)struct { mmc_uint_t header; const char data[(6)+1]; } _OMC_LIT_STRUCT22
= { ((((mmc_uint_t)6)<<(3))+((1<<(3+3))+5)), ", id: "
}
;
65#define _OMC_LIT22((void*)((char*)(&(_OMC_LIT_STRUCT22).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT22)((void*)((char*)(&(_OMC_LIT_STRUCT22).header) + 3))
66#define _OMC_LIT23_data")\n" ")\n"
67static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT23,2,_OMC_LIT23_data)struct { mmc_uint_t header; const char data[(2)+1]; } _OMC_LIT_STRUCT23
= { ((((mmc_uint_t)2)<<(3))+((1<<(3+3))+5)), ")\n"
}
;
68#define _OMC_LIT23((void*)((char*)(&(_OMC_LIT_STRUCT23).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT23)((void*)((char*)(&(_OMC_LIT_STRUCT23).header) + 3))
69#define _OMC_LIT24_data"dumpCSE_verbose" "dumpCSE_verbose"
70static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT24,15,_OMC_LIT24_data)struct { mmc_uint_t header; const char data[(15)+1]; } _OMC_LIT_STRUCT24
= { ((((mmc_uint_t)15)<<(3))+((1<<(3+3))+5)), "dumpCSE_verbose"
}
;
71#define _OMC_LIT24((void*)((char*)(&(_OMC_LIT_STRUCT24).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT24)((void*)((char*)(&(_OMC_LIT_STRUCT24).header) + 3))
72#define _OMC_LIT25_data"Additional output for CSE module." "Additional output for CSE module."
73static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT25,33,_OMC_LIT25_data)struct { mmc_uint_t header; const char data[(33)+1]; } _OMC_LIT_STRUCT25
= { ((((mmc_uint_t)33)<<(3))+((1<<(3+3))+5)), "Additional output for CSE module."
}
;
74#define _OMC_LIT25((void*)((char*)(&(_OMC_LIT_STRUCT25).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT25)((void*)((char*)(&(_OMC_LIT_STRUCT25).header) + 3))
75static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT26,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT26
= { (((2) << 10) + (((3) & 255) << 2)),
{&Gettext_TranslatableContent_gettext__desc,_OMC_LIT25((void*)((char*)(&(_OMC_LIT_STRUCT25).header) + 3))}};
76#define _OMC_LIT26((void*)((char*)(&(_OMC_LIT_STRUCT26).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT26)((void*)((char*)(&(_OMC_LIT_STRUCT26).header) + 3))
77static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT27,5,3)struct { mmc_uint_t header; const void *data[5]; } _OMC_LIT_STRUCT27
= { (((5) << 10) + (((3) & 255) << 2)),
{&Flags_DebugFlag_DEBUG__FLAG__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(124))((void*)(((((mmc_uint_t) (124)) << 1)+0))),_OMC_LIT24((void*)((char*)(&(_OMC_LIT_STRUCT24).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),_OMC_LIT26((void*)((char*)(&(_OMC_LIT_STRUCT26).header) + 3))}};
78#define _OMC_LIT27((void*)((char*)(&(_OMC_LIT_STRUCT27).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT27)((void*)((char*)(&(_OMC_LIT_STRUCT27).header) + 3))
79#define _OMC_LIT28_data"der" "der"
80static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT28,3,_OMC_LIT28_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT28
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "der"
}
;
81#define _OMC_LIT28((void*)((char*)(&(_OMC_LIT_STRUCT28).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT28)((void*)((char*)(&(_OMC_LIT_STRUCT28).header) + 3))
82#define _OMC_LIT29_data"smooth" "smooth"
83static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT29,6,_OMC_LIT29_data)struct { mmc_uint_t header; const char data[(6)+1]; } _OMC_LIT_STRUCT29
= { ((((mmc_uint_t)6)<<(3))+((1<<(3+3))+5)), "smooth"
}
;
84#define _OMC_LIT29((void*)((char*)(&(_OMC_LIT_STRUCT29).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT29)((void*)((char*)(&(_OMC_LIT_STRUCT29).header) + 3))
85#define _OMC_LIT30_data"noEvent" "noEvent"
86static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT30,7,_OMC_LIT30_data)struct { mmc_uint_t header; const char data[(7)+1]; } _OMC_LIT_STRUCT30
= { ((((mmc_uint_t)7)<<(3))+((1<<(3+3))+5)), "noEvent"
}
;
87#define _OMC_LIT30((void*)((char*)(&(_OMC_LIT_STRUCT30).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT30)((void*)((char*)(&(_OMC_LIT_STRUCT30).header) + 3))
88#define _OMC_LIT31_data"semiLinear" "semiLinear"
89static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT31,10,_OMC_LIT31_data)struct { mmc_uint_t header; const char data[(10)+1]; } _OMC_LIT_STRUCT31
= { ((((mmc_uint_t)10)<<(3))+((1<<(3+3))+5)), "semiLinear"
}
;
90#define _OMC_LIT31((void*)((char*)(&(_OMC_LIT_STRUCT31).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT31)((void*)((char*)(&(_OMC_LIT_STRUCT31).header) + 3))
91#define _OMC_LIT32_data"homotopy" "homotopy"
92static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT32,8,_OMC_LIT32_data)struct { mmc_uint_t header; const char data[(8)+1]; } _OMC_LIT_STRUCT32
= { ((((mmc_uint_t)8)<<(3))+((1<<(3+3))+5)), "homotopy"
}
;
93#define _OMC_LIT32((void*)((char*)(&(_OMC_LIT_STRUCT32).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT32)((void*)((char*)(&(_OMC_LIT_STRUCT32).header) + 3))
94#define _OMC_LIT33_data"traverse " "traverse "
95static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT33,9,_OMC_LIT33_data)struct { mmc_uint_t header; const char data[(9)+1]; } _OMC_LIT_STRUCT33
= { ((((mmc_uint_t)9)<<(3))+((1<<(3+3))+5)), "traverse "
}
;
96#define _OMC_LIT33((void*)((char*)(&(_OMC_LIT_STRUCT33).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT33)((void*)((char*)(&(_OMC_LIT_STRUCT33).header) + 3))
97#define _OMC_LIT34_data"\n" "\n"
98static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT34,1,_OMC_LIT34_data)struct { mmc_uint_t header; const char data[(1)+1]; } _OMC_LIT_STRUCT34
= { ((((mmc_uint_t)1)<<(3))+((1<<(3+3))+5)), "\n"
}
;
99#define _OMC_LIT34((void*)((char*)(&(_OMC_LIT_STRUCT34).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT34)((void*)((char*)(&(_OMC_LIT_STRUCT34).header) + 3))
100#define _OMC_LIT35_data" - substitute cse binary: " " - substitute cse binary: "
101static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT35,27,_OMC_LIT35_data)struct { mmc_uint_t header; const char data[(27)+1]; } _OMC_LIT_STRUCT35
= { ((((mmc_uint_t)27)<<(3))+((1<<(3+3))+5)), " - substitute cse binary: "
}
;
102#define _OMC_LIT35((void*)((char*)(&(_OMC_LIT_STRUCT35).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT35)((void*)((char*)(&(_OMC_LIT_STRUCT35).header) + 3))
103static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT36,1,3)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT36
= { (((1) << 10) + (((3) & 255) << 2)),
{&BackendDAE_EquationKind_BINDING__EQUATION__desc,}};
104#define _OMC_LIT36((void*)((char*)(&(_OMC_LIT_STRUCT36).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT36)((void*)((char*)(&(_OMC_LIT_STRUCT36).header) + 3))
105static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT37,4,3)struct { mmc_uint_t header; const void *data[4]; } _OMC_LIT_STRUCT37
= { (((4) << 10) + (((3) & 255) << 2)),
{&BackendDAE_EquationAttributes_EQUATION__ATTRIBUTES__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),_OMC_LIT36((void*)((char*)(&(_OMC_LIT_STRUCT36).header) + 3)),_OMC_LIT13((void*)((char*)(&(_OMC_LIT_STRUCT13).header) + 3))}};
106#define _OMC_LIT37((void*)((char*)(&(_OMC_LIT_STRUCT37).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT37)((void*)((char*)(&(_OMC_LIT_STRUCT37).header) + 3))
107#define _OMC_LIT38_data"collect statistics\n========================================\n" "collect statistics\n========================================\n"
108static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT38,60,_OMC_LIT38_data)struct { mmc_uint_t header; const char data[(60)+1]; } _OMC_LIT_STRUCT38
= { ((((mmc_uint_t)60)<<(3))+((1<<(3+3))+5)), "collect statistics\n========================================\n"
}
;
109#define _OMC_LIT38((void*)((char*)(&(_OMC_LIT_STRUCT38).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT38)((void*)((char*)(&(_OMC_LIT_STRUCT38).header) + 3))
110#define _OMC_LIT39_data"\nstart substitution\n========================================\n" "\nstart substitution\n========================================\n"
111static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT39,61,_OMC_LIT39_data)struct { mmc_uint_t header; const char data[(61)+1]; } _OMC_LIT_STRUCT39
= { ((((mmc_uint_t)61)<<(3))+((1<<(3+3))+5)), "\nstart substitution\n========================================\n"
}
;
112#define _OMC_LIT39((void*)((char*)(&(_OMC_LIT_STRUCT39).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT39)((void*)((char*)(&(_OMC_LIT_STRUCT39).header) + 3))
113#define _OMC_LIT40_data"########### Updated Variable List ###########" "########### Updated Variable List ###########"
114static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT40,45,_OMC_LIT40_data)struct { mmc_uint_t header; const char data[(45)+1]; } _OMC_LIT_STRUCT40
= { ((((mmc_uint_t)45)<<(3))+((1<<(3+3))+5)), "########### Updated Variable List ###########"
}
;
115#define _OMC_LIT40((void*)((char*)(&(_OMC_LIT_STRUCT40).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT40)((void*)((char*)(&(_OMC_LIT_STRUCT40).header) + 3))
116#define _OMC_LIT41_data"########### Updated Equation List ###########" "########### Updated Equation List ###########"
117static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT41,45,_OMC_LIT41_data)struct { mmc_uint_t header; const char data[(45)+1]; } _OMC_LIT_STRUCT41
= { ((((mmc_uint_t)45)<<(3))+((1<<(3+3))+5)), "########### Updated Equation List ###########"
}
;
118#define _OMC_LIT41((void*)((char*)(&(_OMC_LIT_STRUCT41).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT41)((void*)((char*)(&(_OMC_LIT_STRUCT41).header) + 3))
119#define _OMC_LIT42_data"dumpCSE" "dumpCSE"
120static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT42,7,_OMC_LIT42_data)struct { mmc_uint_t header; const char data[(7)+1]; } _OMC_LIT_STRUCT42
= { ((((mmc_uint_t)7)<<(3))+((1<<(3+3))+5)), "dumpCSE"
}
;
121#define _OMC_LIT42((void*)((char*)(&(_OMC_LIT_STRUCT42).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT42)((void*)((char*)(&(_OMC_LIT_STRUCT42).header) + 3))
122static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT43,5,3)struct { mmc_uint_t header; const void *data[5]; } _OMC_LIT_STRUCT43
= { (((5) << 10) + (((3) & 255) << 2)),
{&Flags_DebugFlag_DEBUG__FLAG__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(123))((void*)(((((mmc_uint_t) (123)) << 1)+0))),_OMC_LIT42((void*)((char*)(&(_OMC_LIT_STRUCT42).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),_OMC_LIT26((void*)((char*)(&(_OMC_LIT_STRUCT26).header) + 3))}};
123#define _OMC_LIT43((void*)((char*)(&(_OMC_LIT_STRUCT43).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT43)((void*)((char*)(&(_OMC_LIT_STRUCT43).header) + 3))
124#define _OMC_LIT44_data"$cse" "$cse"
125static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT44,4,_OMC_LIT44_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT44
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "$cse"
}
;
126#define _OMC_LIT44((void*)((char*)(&(_OMC_LIT_STRUCT44).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT44)((void*)((char*)(&(_OMC_LIT_STRUCT44).header) + 3))
127#define _OMC_LIT45_data"This should never appear\n" "This should never appear\n"
128static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT45,25,_OMC_LIT45_data)struct { mmc_uint_t header; const char data[(25)+1]; } _OMC_LIT_STRUCT45
= { ((((mmc_uint_t)25)<<(3))+((1<<(3+3))+5)), "This should never appear\n"
}
;
129#define _OMC_LIT45((void*)((char*)(&(_OMC_LIT_STRUCT45).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT45)((void*)((char*)(&(_OMC_LIT_STRUCT45).header) + 3))
130static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT46,2,4)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT46
= { (((2) << 10) + (((4) & 255) << 2)),
{&DAE_Type_T__REAL__desc,MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))}};
131#define _OMC_LIT46((void*)((char*)(&(_OMC_LIT_STRUCT46).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT46)((void*)((char*)(&(_OMC_LIT_STRUCT46).header) + 3))
132static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT47,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT47
= { (((2) << 10) + (((3) & 255) << 2)),
{&DAE_Type_T__INTEGER__desc,MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))}};
133#define _OMC_LIT47((void*)((char*)(&(_OMC_LIT_STRUCT47).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT47)((void*)((char*)(&(_OMC_LIT_STRUCT47).header) + 3))
134static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT48,2,5)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT48
= { (((2) << 10) + (((5) & 255) << 2)),
{&DAE_Type_T__STRING__desc,MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))}};
135#define _OMC_LIT48((void*)((char*)(&(_OMC_LIT_STRUCT48).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT48)((void*)((char*)(&(_OMC_LIT_STRUCT48).header) + 3))
136static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT49,2,6)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT49
= { (((2) << 10) + (((6) & 255) << 2)),
{&DAE_Type_T__BOOL__desc,MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))}};
137#define _OMC_LIT49((void*)((char*)(&(_OMC_LIT_STRUCT49).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT49)((void*)((char*)(&(_OMC_LIT_STRUCT49).header) + 3))
138static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT50,2,7)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT50
= { (((2) << 10) + (((7) & 255) << 2)),
{&DAE_Type_T__CLOCK__desc,MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))}};
139#define _OMC_LIT50((void*)((char*)(&(_OMC_LIT_STRUCT50).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT50)((void*)((char*)(&(_OMC_LIT_STRUCT50).header) + 3))
140#define _OMC_LIT51_data" - createReturnExp failed for " " - createReturnExp failed for "
141static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT51,31,_OMC_LIT51_data)struct { mmc_uint_t header; const char data[(31)+1]; } _OMC_LIT_STRUCT51
= { ((((mmc_uint_t)31)<<(3))+((1<<(3+3))+5)), " - createReturnExp failed for "
}
;
142#define _OMC_LIT51((void*)((char*)(&(_OMC_LIT_STRUCT51).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT51)((void*)((char*)(&(_OMC_LIT_STRUCT51).header) + 3))
143#define _OMC_LIT52_data"acos" "acos"
144static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT52,4,_OMC_LIT52_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT52
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "acos"
}
;
145#define _OMC_LIT52((void*)((char*)(&(_OMC_LIT_STRUCT52).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT52)((void*)((char*)(&(_OMC_LIT_STRUCT52).header) + 3))
146#define _OMC_LIT53_data"asin" "asin"
147static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT53,4,_OMC_LIT53_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT53
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "asin"
}
;
148#define _OMC_LIT53((void*)((char*)(&(_OMC_LIT_STRUCT53).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT53)((void*)((char*)(&(_OMC_LIT_STRUCT53).header) + 3))
149#define _OMC_LIT54_data"atan" "atan"
150static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT54,4,_OMC_LIT54_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT54
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "atan"
}
;
151#define _OMC_LIT54((void*)((char*)(&(_OMC_LIT_STRUCT54).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT54)((void*)((char*)(&(_OMC_LIT_STRUCT54).header) + 3))
152#define _OMC_LIT55_data"atan2" "atan2"
153static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT55,5,_OMC_LIT55_data)struct { mmc_uint_t header; const char data[(5)+1]; } _OMC_LIT_STRUCT55
= { ((((mmc_uint_t)5)<<(3))+((1<<(3+3))+5)), "atan2"
}
;
154#define _OMC_LIT55((void*)((char*)(&(_OMC_LIT_STRUCT55).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT55)((void*)((char*)(&(_OMC_LIT_STRUCT55).header) + 3))
155#define _OMC_LIT56_data"cos" "cos"
156static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT56,3,_OMC_LIT56_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT56
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "cos"
}
;
157#define _OMC_LIT56((void*)((char*)(&(_OMC_LIT_STRUCT56).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT56)((void*)((char*)(&(_OMC_LIT_STRUCT56).header) + 3))
158#define _OMC_LIT57_data"cosh" "cosh"
159static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT57,4,_OMC_LIT57_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT57
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "cosh"
}
;
160#define _OMC_LIT57((void*)((char*)(&(_OMC_LIT_STRUCT57).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT57)((void*)((char*)(&(_OMC_LIT_STRUCT57).header) + 3))
161#define _OMC_LIT58_data"exp" "exp"
162static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT58,3,_OMC_LIT58_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT58
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "exp"
}
;
163#define _OMC_LIT58((void*)((char*)(&(_OMC_LIT_STRUCT58).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT58)((void*)((char*)(&(_OMC_LIT_STRUCT58).header) + 3))
164#define _OMC_LIT59_data"log" "log"
165static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT59,3,_OMC_LIT59_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT59
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "log"
}
;
166#define _OMC_LIT59((void*)((char*)(&(_OMC_LIT_STRUCT59).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT59)((void*)((char*)(&(_OMC_LIT_STRUCT59).header) + 3))
167#define _OMC_LIT60_data"log10" "log10"
168static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT60,5,_OMC_LIT60_data)struct { mmc_uint_t header; const char data[(5)+1]; } _OMC_LIT_STRUCT60
= { ((((mmc_uint_t)5)<<(3))+((1<<(3+3))+5)), "log10"
}
;
169#define _OMC_LIT60((void*)((char*)(&(_OMC_LIT_STRUCT60).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT60)((void*)((char*)(&(_OMC_LIT_STRUCT60).header) + 3))
170#define _OMC_LIT61_data"sin" "sin"
171static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT61,3,_OMC_LIT61_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT61
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "sin"
}
;
172#define _OMC_LIT61((void*)((char*)(&(_OMC_LIT_STRUCT61).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT61)((void*)((char*)(&(_OMC_LIT_STRUCT61).header) + 3))
173#define _OMC_LIT62_data"sinh" "sinh"
174static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT62,4,_OMC_LIT62_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT62
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "sinh"
}
;
175#define _OMC_LIT62((void*)((char*)(&(_OMC_LIT_STRUCT62).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT62)((void*)((char*)(&(_OMC_LIT_STRUCT62).header) + 3))
176#define _OMC_LIT63_data"tan" "tan"
177static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT63,3,_OMC_LIT63_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT63
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "tan"
}
;
178#define _OMC_LIT63((void*)((char*)(&(_OMC_LIT_STRUCT63).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT63)((void*)((char*)(&(_OMC_LIT_STRUCT63).header) + 3))
179#define _OMC_LIT64_data"tanh" "tanh"
180static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT64,4,_OMC_LIT64_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT64
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "tanh"
}
;
181#define _OMC_LIT64((void*)((char*)(&(_OMC_LIT_STRUCT64).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT64)((void*)((char*)(&(_OMC_LIT_STRUCT64).header) + 3))
182#define _OMC_LIT65_data"wfcAdvanced" "wfcAdvanced"
183static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT65,11,_OMC_LIT65_data)struct { mmc_uint_t header; const char data[(11)+1]; } _OMC_LIT_STRUCT65
= { ((((mmc_uint_t)11)<<(3))+((1<<(3+3))+5)), "wfcAdvanced"
}
;
184#define _OMC_LIT65((void*)((char*)(&(_OMC_LIT_STRUCT65).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT65)((void*)((char*)(&(_OMC_LIT_STRUCT65).header) + 3))
185static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT66,1,4)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT66
= { (((1) << 10) + (((4) & 255) << 2)),
{&Flags_FlagVisibility_EXTERNAL__desc,}};
186#define _OMC_LIT66((void*)((char*)(&(_OMC_LIT_STRUCT66).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT66)((void*)((char*)(&(_OMC_LIT_STRUCT66).header) + 3))
187static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT67,2,4)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT67
= { (((2) << 10) + (((4) & 255) << 2)),
{&Flags_FlagData_BOOL__FLAG__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0)))}};
188#define _OMC_LIT67((void*)((char*)(&(_OMC_LIT_STRUCT67).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT67)((void*)((char*)(&(_OMC_LIT_STRUCT67).header) + 3))
189#define _OMC_LIT68_data"wrapFunctionCalls ignores more then default cases, e.g. exp, sin, cos, log, (experimental flag)" "wrapFunctionCalls ignores more then default cases, e.g. exp, sin, cos, log, (experimental flag)"
190static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT68,95,_OMC_LIT68_data)struct { mmc_uint_t header; const char data[(95)+1]; } _OMC_LIT_STRUCT68
= { ((((mmc_uint_t)95)<<(3))+((1<<(3+3))+5)), "wrapFunctionCalls ignores more then default cases, e.g. exp, sin, cos, log, (experimental flag)"
}
;
191#define _OMC_LIT68((void*)((char*)(&(_OMC_LIT_STRUCT68).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT68)((void*)((char*)(&(_OMC_LIT_STRUCT68).header) + 3))
192static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT69,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT69
= { (((2) << 10) + (((3) & 255) << 2)),
{&Gettext_TranslatableContent_gettext__desc,_OMC_LIT68((void*)((char*)(&(_OMC_LIT_STRUCT68).header) + 3))}};
193#define _OMC_LIT69((void*)((char*)(&(_OMC_LIT_STRUCT69).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT69)((void*)((char*)(&(_OMC_LIT_STRUCT69).header) + 3))
194static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT70,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT70
= { (((8) << 10) + (((3) & 255) << 2)),
{&Flags_ConfigFlag_CONFIG__FLAG__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(111))((void*)(((((mmc_uint_t) (111)) << 1)+0))),_OMC_LIT65((void*)((char*)(&(_OMC_LIT_STRUCT65).header) + 3)),MMC_REFSTRUCTLIT(mmc_none)((void*)((char*)(&(mmc_none).header) + 3)),_OMC_LIT66((void*)((char*)(&(_OMC_LIT_STRUCT66).header) + 3)),_OMC_LIT67((void*)((char*)(&(_OMC_LIT_STRUCT67).header) + 3)),MMC_REFSTRUCTLIT(mmc_none)((void*)((char*)(&(mmc_none).header) + 3)),_OMC_LIT69((void*)((char*)(&(_OMC_LIT_STRUCT69).header) + 3))}};
195#define _OMC_LIT70((void*)((char*)(&(_OMC_LIT_STRUCT70).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT70)((void*)((char*)(&(_OMC_LIT_STRUCT70).header) + 3))
196#define _OMC_LIT71_data"$_round" "$_round"
197static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT71,7,_OMC_LIT71_data)struct { mmc_uint_t header; const char data[(7)+1]; } _OMC_LIT_STRUCT71
= { ((((mmc_uint_t)7)<<(3))+((1<<(3+3))+5)), "$_round"
}
;
198#define _OMC_LIT71((void*)((char*)(&(_OMC_LIT_STRUCT71).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT71)((void*)((char*)(&(_OMC_LIT_STRUCT71).header) + 3))
199#define _OMC_LIT72_data"$getPart" "$getPart"
200static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT72,8,_OMC_LIT72_data)struct { mmc_uint_t header; const char data[(8)+1]; } _OMC_LIT_STRUCT72
= { ((((mmc_uint_t)8)<<(3))+((1<<(3+3))+5)), "$getPart"
}
;
201#define _OMC_LIT72((void*)((char*)(&(_OMC_LIT_STRUCT72).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT72)((void*)((char*)(&(_OMC_LIT_STRUCT72).header) + 3))
202#define _OMC_LIT73_data"abs" "abs"
203static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT73,3,_OMC_LIT73_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT73
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "abs"
}
;
204#define _OMC_LIT73((void*)((char*)(&(_OMC_LIT_STRUCT73).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT73)((void*)((char*)(&(_OMC_LIT_STRUCT73).header) + 3))
205#define _OMC_LIT74_data"actualStream" "actualStream"
206static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT74,12,_OMC_LIT74_data)struct { mmc_uint_t header; const char data[(12)+1]; } _OMC_LIT_STRUCT74
= { ((((mmc_uint_t)12)<<(3))+((1<<(3+3))+5)), "actualStream"
}
;
207#define _OMC_LIT74((void*)((char*)(&(_OMC_LIT_STRUCT74).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT74)((void*)((char*)(&(_OMC_LIT_STRUCT74).header) + 3))
208#define _OMC_LIT75_data"backSample" "backSample"
209static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT75,10,_OMC_LIT75_data)struct { mmc_uint_t header; const char data[(10)+1]; } _OMC_LIT_STRUCT75
= { ((((mmc_uint_t)10)<<(3))+((1<<(3+3))+5)), "backSample"
}
;
210#define _OMC_LIT75((void*)((char*)(&(_OMC_LIT_STRUCT75).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT75)((void*)((char*)(&(_OMC_LIT_STRUCT75).header) + 3))
211#define _OMC_LIT76_data"cardinality" "cardinality"
212static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT76,11,_OMC_LIT76_data)struct { mmc_uint_t header; const char data[(11)+1]; } _OMC_LIT_STRUCT76
= { ((((mmc_uint_t)11)<<(3))+((1<<(3+3))+5)), "cardinality"
}
;
213#define _OMC_LIT76((void*)((char*)(&(_OMC_LIT_STRUCT76).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT76)((void*)((char*)(&(_OMC_LIT_STRUCT76).header) + 3))
214#define _OMC_LIT77_data"ceil" "ceil"
215static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT77,4,_OMC_LIT77_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT77
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "ceil"
}
;
216#define _OMC_LIT77((void*)((char*)(&(_OMC_LIT_STRUCT77).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT77)((void*)((char*)(&(_OMC_LIT_STRUCT77).header) + 3))
217#define _OMC_LIT78_data"change" "change"
218static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT78,6,_OMC_LIT78_data)struct { mmc_uint_t header; const char data[(6)+1]; } _OMC_LIT_STRUCT78
= { ((((mmc_uint_t)6)<<(3))+((1<<(3+3))+5)), "change"
}
;
219#define _OMC_LIT78((void*)((char*)(&(_OMC_LIT_STRUCT78).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT78)((void*)((char*)(&(_OMC_LIT_STRUCT78).header) + 3))
220#define _OMC_LIT79_data"Clock" "Clock"
221static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT79,5,_OMC_LIT79_data)struct { mmc_uint_t header; const char data[(5)+1]; } _OMC_LIT_STRUCT79
= { ((((mmc_uint_t)5)<<(3))+((1<<(3+3))+5)), "Clock"
}
;
222#define _OMC_LIT79((void*)((char*)(&(_OMC_LIT_STRUCT79).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT79)((void*)((char*)(&(_OMC_LIT_STRUCT79).header) + 3))
223#define _OMC_LIT80_data"delay" "delay"
224static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT80,5,_OMC_LIT80_data)struct { mmc_uint_t header; const char data[(5)+1]; } _OMC_LIT_STRUCT80
= { ((((mmc_uint_t)5)<<(3))+((1<<(3+3))+5)), "delay"
}
;
225#define _OMC_LIT80((void*)((char*)(&(_OMC_LIT_STRUCT80).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT80)((void*)((char*)(&(_OMC_LIT_STRUCT80).header) + 3))
226#define _OMC_LIT81_data"div" "div"
227static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT81,3,_OMC_LIT81_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT81
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "div"
}
;
228#define _OMC_LIT81((void*)((char*)(&(_OMC_LIT_STRUCT81).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT81)((void*)((char*)(&(_OMC_LIT_STRUCT81).header) + 3))
229#define _OMC_LIT82_data"edge" "edge"
230static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT82,4,_OMC_LIT82_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT82
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "edge"
}
;
231#define _OMC_LIT82((void*)((char*)(&(_OMC_LIT_STRUCT82).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT82)((void*)((char*)(&(_OMC_LIT_STRUCT82).header) + 3))
232#define _OMC_LIT83_data"firstTick" "firstTick"
233static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT83,9,_OMC_LIT83_data)struct { mmc_uint_t header; const char data[(9)+1]; } _OMC_LIT_STRUCT83
= { ((((mmc_uint_t)9)<<(3))+((1<<(3+3))+5)), "firstTick"
}
;
234#define _OMC_LIT83((void*)((char*)(&(_OMC_LIT_STRUCT83).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT83)((void*)((char*)(&(_OMC_LIT_STRUCT83).header) + 3))
235#define _OMC_LIT84_data"floor" "floor"
236static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT84,5,_OMC_LIT84_data)struct { mmc_uint_t header; const char data[(5)+1]; } _OMC_LIT_STRUCT84
= { ((((mmc_uint_t)5)<<(3))+((1<<(3+3))+5)), "floor"
}
;
237#define _OMC_LIT84((void*)((char*)(&(_OMC_LIT_STRUCT84).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT84)((void*)((char*)(&(_OMC_LIT_STRUCT84).header) + 3))
238#define _OMC_LIT85_data"getInstanceName" "getInstanceName"
239static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT85,15,_OMC_LIT85_data)struct { mmc_uint_t header; const char data[(15)+1]; } _OMC_LIT_STRUCT85
= { ((((mmc_uint_t)15)<<(3))+((1<<(3+3))+5)), "getInstanceName"
}
;
240#define _OMC_LIT85((void*)((char*)(&(_OMC_LIT_STRUCT85).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT85)((void*)((char*)(&(_OMC_LIT_STRUCT85).header) + 3))
241#define _OMC_LIT86_data"hold" "hold"
242static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT86,4,_OMC_LIT86_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT86
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "hold"
}
;
243#define _OMC_LIT86((void*)((char*)(&(_OMC_LIT_STRUCT86).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT86)((void*)((char*)(&(_OMC_LIT_STRUCT86).header) + 3))
244#define _OMC_LIT87_data"initial" "initial"
245static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT87,7,_OMC_LIT87_data)struct { mmc_uint_t header; const char data[(7)+1]; } _OMC_LIT_STRUCT87
= { ((((mmc_uint_t)7)<<(3))+((1<<(3+3))+5)), "initial"
}
;
246#define _OMC_LIT87((void*)((char*)(&(_OMC_LIT_STRUCT87).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT87)((void*)((char*)(&(_OMC_LIT_STRUCT87).header) + 3))
247#define _OMC_LIT88_data"inStream" "inStream"
248static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT88,8,_OMC_LIT88_data)struct { mmc_uint_t header; const char data[(8)+1]; } _OMC_LIT_STRUCT88
= { ((((mmc_uint_t)8)<<(3))+((1<<(3+3))+5)), "inStream"
}
;
249#define _OMC_LIT88((void*)((char*)(&(_OMC_LIT_STRUCT88).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT88)((void*)((char*)(&(_OMC_LIT_STRUCT88).header) + 3))
250#define _OMC_LIT89_data"integer" "integer"
251static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT89,7,_OMC_LIT89_data)struct { mmc_uint_t header; const char data[(7)+1]; } _OMC_LIT_STRUCT89
= { ((((mmc_uint_t)7)<<(3))+((1<<(3+3))+5)), "integer"
}
;
252#define _OMC_LIT89((void*)((char*)(&(_OMC_LIT_STRUCT89).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT89)((void*)((char*)(&(_OMC_LIT_STRUCT89).header) + 3))
253#define _OMC_LIT90_data"Integer" "Integer"
254static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT90,7,_OMC_LIT90_data)struct { mmc_uint_t header; const char data[(7)+1]; } _OMC_LIT_STRUCT90
= { ((((mmc_uint_t)7)<<(3))+((1<<(3+3))+5)), "Integer"
}
;
255#define _OMC_LIT90((void*)((char*)(&(_OMC_LIT_STRUCT90).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT90)((void*)((char*)(&(_OMC_LIT_STRUCT90).header) + 3))
256#define _OMC_LIT91_data"interval" "interval"
257static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT91,8,_OMC_LIT91_data)struct { mmc_uint_t header; const char data[(8)+1]; } _OMC_LIT_STRUCT91
= { ((((mmc_uint_t)8)<<(3))+((1<<(3+3))+5)), "interval"
}
;
258#define _OMC_LIT91((void*)((char*)(&(_OMC_LIT_STRUCT91).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT91)((void*)((char*)(&(_OMC_LIT_STRUCT91).header) + 3))
259#define _OMC_LIT92_data"mod" "mod"
260static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT92,3,_OMC_LIT92_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT92
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "mod"
}
;
261#define _OMC_LIT92((void*)((char*)(&(_OMC_LIT_STRUCT92).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT92)((void*)((char*)(&(_OMC_LIT_STRUCT92).header) + 3))
262#define _OMC_LIT93_data"noClock" "noClock"
263static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT93,7,_OMC_LIT93_data)struct { mmc_uint_t header; const char data[(7)+1]; } _OMC_LIT_STRUCT93
= { ((((mmc_uint_t)7)<<(3))+((1<<(3+3))+5)), "noClock"
}
;
264#define _OMC_LIT93((void*)((char*)(&(_OMC_LIT_STRUCT93).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT93)((void*)((char*)(&(_OMC_LIT_STRUCT93).header) + 3))
265#define _OMC_LIT94_data"pre" "pre"
266static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT94,3,_OMC_LIT94_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT94
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "pre"
}
;
267#define _OMC_LIT94((void*)((char*)(&(_OMC_LIT_STRUCT94).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT94)((void*)((char*)(&(_OMC_LIT_STRUCT94).header) + 3))
268#define _OMC_LIT95_data"previous" "previous"
269static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT95,8,_OMC_LIT95_data)struct { mmc_uint_t header; const char data[(8)+1]; } _OMC_LIT_STRUCT95
= { ((((mmc_uint_t)8)<<(3))+((1<<(3+3))+5)), "previous"
}
;
270#define _OMC_LIT95((void*)((char*)(&(_OMC_LIT_STRUCT95).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT95)((void*)((char*)(&(_OMC_LIT_STRUCT95).header) + 3))
271#define _OMC_LIT96_data"reinit" "reinit"
272static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT96,6,_OMC_LIT96_data)struct { mmc_uint_t header; const char data[(6)+1]; } _OMC_LIT_STRUCT96
= { ((((mmc_uint_t)6)<<(3))+((1<<(3+3))+5)), "reinit"
}
;
273#define _OMC_LIT96((void*)((char*)(&(_OMC_LIT_STRUCT96).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT96)((void*)((char*)(&(_OMC_LIT_STRUCT96).header) + 3))
274#define _OMC_LIT97_data"rem" "rem"
275static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT97,3,_OMC_LIT97_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT97
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "rem"
}
;
276#define _OMC_LIT97((void*)((char*)(&(_OMC_LIT_STRUCT97).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT97)((void*)((char*)(&(_OMC_LIT_STRUCT97).header) + 3))
277#define _OMC_LIT98_data"sample" "sample"
278static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT98,6,_OMC_LIT98_data)struct { mmc_uint_t header; const char data[(6)+1]; } _OMC_LIT_STRUCT98
= { ((((mmc_uint_t)6)<<(3))+((1<<(3+3))+5)), "sample"
}
;
279#define _OMC_LIT98((void*)((char*)(&(_OMC_LIT_STRUCT98).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT98)((void*)((char*)(&(_OMC_LIT_STRUCT98).header) + 3))
280#define _OMC_LIT99_data"shiftSample" "shiftSample"
281static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT99,11,_OMC_LIT99_data)struct { mmc_uint_t header; const char data[(11)+1]; } _OMC_LIT_STRUCT99
= { ((((mmc_uint_t)11)<<(3))+((1<<(3+3))+5)), "shiftSample"
}
;
282#define _OMC_LIT99((void*)((char*)(&(_OMC_LIT_STRUCT99).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT99)((void*)((char*)(&(_OMC_LIT_STRUCT99).header) + 3))
283#define _OMC_LIT100_data"sign" "sign"
284static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT100,4,_OMC_LIT100_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT100
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "sign"
}
;
285#define _OMC_LIT100((void*)((char*)(&(_OMC_LIT_STRUCT100).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT100)((void*)((char*)(&(_OMC_LIT_STRUCT100).header) + 3))
286#define _OMC_LIT101_data"spatialDistribution" "spatialDistribution"
287static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT101,19,_OMC_LIT101_data)struct { mmc_uint_t header; const char data[(19)+1]; } _OMC_LIT_STRUCT101
= { ((((mmc_uint_t)19)<<(3))+((1<<(3+3))+5)), "spatialDistribution"
}
;
288#define _OMC_LIT101((void*)((char*)(&(_OMC_LIT_STRUCT101).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT101)((void*)((char*)(&(_OMC_LIT_STRUCT101).header) + 3))
289#define _OMC_LIT102_data"sqrt" "sqrt"
290static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT102,4,_OMC_LIT102_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT102
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "sqrt"
}
;
291#define _OMC_LIT102((void*)((char*)(&(_OMC_LIT_STRUCT102).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT102)((void*)((char*)(&(_OMC_LIT_STRUCT102).header) + 3))
292#define _OMC_LIT103_data"String" "String"
293static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT103,6,_OMC_LIT103_data)struct { mmc_uint_t header; const char data[(6)+1]; } _OMC_LIT_STRUCT103
= { ((((mmc_uint_t)6)<<(3))+((1<<(3+3))+5)), "String"
}
;
294#define _OMC_LIT103((void*)((char*)(&(_OMC_LIT_STRUCT103).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT103)((void*)((char*)(&(_OMC_LIT_STRUCT103).header) + 3))
295#define _OMC_LIT104_data"subSample" "subSample"
296static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT104,9,_OMC_LIT104_data)struct { mmc_uint_t header; const char data[(9)+1]; } _OMC_LIT_STRUCT104
= { ((((mmc_uint_t)9)<<(3))+((1<<(3+3))+5)), "subSample"
}
;
297#define _OMC_LIT104((void*)((char*)(&(_OMC_LIT_STRUCT104).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT104)((void*)((char*)(&(_OMC_LIT_STRUCT104).header) + 3))
298#define _OMC_LIT105_data"sum" "sum"
299static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT105,3,_OMC_LIT105_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT105
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "sum"
}
;
300#define _OMC_LIT105((void*)((char*)(&(_OMC_LIT_STRUCT105).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT105)((void*)((char*)(&(_OMC_LIT_STRUCT105).header) + 3))
301#define _OMC_LIT106_data"superSample" "superSample"
302static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT106,11,_OMC_LIT106_data)struct { mmc_uint_t header; const char data[(11)+1]; } _OMC_LIT_STRUCT106
= { ((((mmc_uint_t)11)<<(3))+((1<<(3+3))+5)), "superSample"
}
;
303#define _OMC_LIT106((void*)((char*)(&(_OMC_LIT_STRUCT106).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT106)((void*)((char*)(&(_OMC_LIT_STRUCT106).header) + 3))
304#define _OMC_LIT107_data"terminal" "terminal"
305static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT107,8,_OMC_LIT107_data)struct { mmc_uint_t header; const char data[(8)+1]; } _OMC_LIT_STRUCT107
= { ((((mmc_uint_t)8)<<(3))+((1<<(3+3))+5)), "terminal"
}
;
306#define _OMC_LIT107((void*)((char*)(&(_OMC_LIT_STRUCT107).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT107)((void*)((char*)(&(_OMC_LIT_STRUCT107).header) + 3))
307#define _OMC_LIT108_data"mergeCSETuples: This should never appear! (2)\n" "mergeCSETuples: This should never appear! (2)\n"
308static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT108,46,_OMC_LIT108_data)struct { mmc_uint_t header; const char data[(46)+1]; } _OMC_LIT_STRUCT108
= { ((((mmc_uint_t)46)<<(3))+((1<<(3+3))+5)), "mergeCSETuples: This should never appear! (2)\n"
}
;
309#define _OMC_LIT108((void*)((char*)(&(_OMC_LIT_STRUCT108).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT108)((void*)((char*)(&(_OMC_LIT_STRUCT108).header) + 3))
310#define _OMC_LIT109_data"mergeCSETuples: This should never appear! (1)\n" "mergeCSETuples: This should never appear! (1)\n"
311static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT109,46,_OMC_LIT109_data)struct { mmc_uint_t header; const char data[(46)+1]; } _OMC_LIT_STRUCT109
= { ((((mmc_uint_t)46)<<(3))+((1<<(3+3))+5)), "mergeCSETuples: This should never appear! (1)\n"
}
;
312#define _OMC_LIT109((void*)((char*)(&(_OMC_LIT_STRUCT109).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT109)((void*)((char*)(&(_OMC_LIT_STRUCT109).header) + 3))
313static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT110,1,5)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT110
= { (((1) << 10) + (((5) & 255) << 2)),
{&ErrorTypes_MessageType_TRANSLATION__desc,}};
314#define _OMC_LIT110((void*)((char*)(&(_OMC_LIT_STRUCT110).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT110)((void*)((char*)(&(_OMC_LIT_STRUCT110).header) + 3))
315static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT111,1,4)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT111
= { (((1) << 10) + (((4) & 255) << 2)),
{&ErrorTypes_Severity_ERROR__desc,}};
316#define _OMC_LIT111((void*)((char*)(&(_OMC_LIT_STRUCT111).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT111)((void*)((char*)(&(_OMC_LIT_STRUCT111).header) + 3))
317#define _OMC_LIT112_data"Failed to elaborate expression: %s." "Failed to elaborate expression: %s."
318static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT112,35,_OMC_LIT112_data)struct { mmc_uint_t header; const char data[(35)+1]; } _OMC_LIT_STRUCT112
= { ((((mmc_uint_t)35)<<(3))+((1<<(3+3))+5)), "Failed to elaborate expression: %s."
}
;
319#define _OMC_LIT112((void*)((char*)(&(_OMC_LIT_STRUCT112).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT112)((void*)((char*)(&(_OMC_LIT_STRUCT112).header) + 3))
320static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT113,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT113
= { (((2) << 10) + (((3) & 255) << 2)),
{&Gettext_TranslatableContent_gettext__desc,_OMC_LIT112((void*)((char*)(&(_OMC_LIT_STRUCT112).header) + 3))}};
321#define _OMC_LIT113((void*)((char*)(&(_OMC_LIT_STRUCT113).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT113)((void*)((char*)(&(_OMC_LIT_STRUCT113).header) + 3))
322static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT114,5,3)struct { mmc_uint_t header; const void *data[5]; } _OMC_LIT_STRUCT114
= { (((5) << 10) + (((3) & 255) << 2)),
{&ErrorTypes_Message_MESSAGE__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(159))((void*)(((((mmc_uint_t) (159)) << 1)+0))),_OMC_LIT110((void*)((char*)(&(_OMC_LIT_STRUCT110).header) + 3)),_OMC_LIT111((void*)((char*)(&(_OMC_LIT_STRUCT111).header) + 3)),_OMC_LIT113((void*)((char*)(&(_OMC_LIT_STRUCT113).header) + 3))}};
323#define _OMC_LIT114((void*)((char*)(&(_OMC_LIT_STRUCT114).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT114)((void*)((char*)(&(_OMC_LIT_STRUCT114).header) + 3))
324#define _OMC_LIT115_data" This should never happen, Error in wrapFunctionCalls_analysis3. Trying to recover." " This should never happen, Error in wrapFunctionCalls_analysis3. Trying to recover."
325static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT115,83,_OMC_LIT115_data)struct { mmc_uint_t header; const char data[(83)+1]; } _OMC_LIT_STRUCT115
= { ((((mmc_uint_t)83)<<(3))+((1<<(3+3))+5)), " This should never happen, Error in wrapFunctionCalls_analysis3. Trying to recover."
}
;
326#define _OMC_LIT115((void*)((char*)(&(_OMC_LIT_STRUCT115).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT115)((void*)((char*)(&(_OMC_LIT_STRUCT115).header) + 3))
327static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT116,1,7)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT116
= { (((1) << 10) + (((7) & 255) << 2)),
{&DAE_ComponentRef_WILD__desc,}};
328#define _OMC_LIT116((void*)((char*)(&(_OMC_LIT_STRUCT116).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT116)((void*)((char*)(&(_OMC_LIT_STRUCT116).header) + 3))
329static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT117,1,11)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT117
= { (((1) << 10) + (((11) & 255) << 2)),
{&DAE_Type_T__UNKNOWN__desc,}};
330#define _OMC_LIT117((void*)((char*)(&(_OMC_LIT_STRUCT117).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT117)((void*)((char*)(&(_OMC_LIT_STRUCT117).header) + 3))
331static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT118,3,9)struct { mmc_uint_t header; const void *data[3]; } _OMC_LIT_STRUCT118
= { (((3) << 10) + (((9) & 255) << 2)),
{&DAE_Exp_CREF__desc,_OMC_LIT116((void*)((char*)(&(_OMC_LIT_STRUCT116).header) + 3)),_OMC_LIT117((void*)((char*)(&(_OMC_LIT_STRUCT117).header) + 3))}};
332#define _OMC_LIT118((void*)((char*)(&(_OMC_LIT_STRUCT118).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT118)((void*)((char*)(&(_OMC_LIT_STRUCT118).header) + 3))
333#define _OMC_LIT119_data"wrapFunctionCalls_analysis (COMPLEX_EQUATION)" "wrapFunctionCalls_analysis (COMPLEX_EQUATION)"
334static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT119,45,_OMC_LIT119_data)struct { mmc_uint_t header; const char data[(45)+1]; } _OMC_LIT_STRUCT119
= { ((((mmc_uint_t)45)<<(3))+((1<<(3+3))+5)), "wrapFunctionCalls_analysis (COMPLEX_EQUATION)"
}
;
335#define _OMC_LIT119((void*)((char*)(&(_OMC_LIT_STRUCT119).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT119)((void*)((char*)(&(_OMC_LIT_STRUCT119).header) + 3))
336#define _OMC_LIT120_data"wrapFunctionCalls_analysis (EQUATION)" "wrapFunctionCalls_analysis (EQUATION)"
337static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT120,37,_OMC_LIT120_data)struct { mmc_uint_t header; const char data[(37)+1]; } _OMC_LIT_STRUCT120
= { ((((mmc_uint_t)37)<<(3))+((1<<(3+3))+5)), "wrapFunctionCalls_analysis (EQUATION)"
}
;
338#define _OMC_LIT120((void*)((char*)(&(_OMC_LIT_STRUCT120).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT120)((void*)((char*)(&(_OMC_LIT_STRUCT120).header) + 3))
339#define _OMC_LIT121_data"globalKnownVars:\n========================================\n" "globalKnownVars:\n========================================\n"
340static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT121,58,_OMC_LIT121_data)struct { mmc_uint_t header; const char data[(58)+1]; } _OMC_LIT_STRUCT121
= { ((((mmc_uint_t)58)<<(3))+((1<<(3+3))+5)), "globalKnownVars:\n========================================\n"
}
;
341#define _OMC_LIT121((void*)((char*)(&(_OMC_LIT_STRUCT121).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT121)((void*)((char*)(&(_OMC_LIT_STRUCT121).header) + 3))
342#define _OMC_LIT122_data"\nTraverse expandable array\n========================================\n" "\nTraverse expandable array\n========================================\n"
343static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT122,68,_OMC_LIT122_data)struct { mmc_uint_t header; const char data[(68)+1]; } _OMC_LIT_STRUCT122
= { ((((mmc_uint_t)68)<<(3))+((1<<(3+3))+5)), "\nTraverse expandable array\n========================================\n"
}
;
344#define _OMC_LIT122((void*)((char*)(&(_OMC_LIT_STRUCT122).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT122)((void*)((char*)(&(_OMC_LIT_STRUCT122).header) + 3))
345#define _OMC_LIT123_data"\n--> cse-equation: " "\n--> cse-equation: "
346static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT123,19,_OMC_LIT123_data)struct { mmc_uint_t header; const char data[(19)+1]; } _OMC_LIT_STRUCT123
= { ((((mmc_uint_t)19)<<(3))+((1<<(3+3))+5)), "\n--> cse-equation: "
}
;
347#define _OMC_LIT123((void*)((char*)(&(_OMC_LIT_STRUCT123).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT123)((void*)((char*)(&(_OMC_LIT_STRUCT123).header) + 3))
348#define _OMC_LIT124_data" = " " = "
349static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT124,3,_OMC_LIT124_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT124
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), " = "
}
;
350#define _OMC_LIT124((void*)((char*)(&(_OMC_LIT_STRUCT124).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT124)((void*)((char*)(&(_OMC_LIT_STRUCT124).header) + 3))
351static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT125,1,9)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT125
= { (((1) << 10) + (((9) & 255) << 2)),
{&BackendDAE_EquationKind_UNKNOWN__EQUATION__KIND__desc,}};
352#define _OMC_LIT125((void*)((char*)(&(_OMC_LIT_STRUCT125).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT125)((void*)((char*)(&(_OMC_LIT_STRUCT125).header) + 3))
353static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT126,4,3)struct { mmc_uint_t header; const void *data[4]; } _OMC_LIT_STRUCT126
= { (((4) << 10) + (((3) & 255) << 2)),
{&BackendDAE_EquationAttributes_EQUATION__ATTRIBUTES__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),_OMC_LIT125((void*)((char*)(&(_OMC_LIT_STRUCT125).header) + 3)),_OMC_LIT13((void*)((char*)(&(_OMC_LIT_STRUCT13).header) + 3))}};
354#define _OMC_LIT126((void*)((char*)(&(_OMC_LIT_STRUCT126).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT126)((void*)((char*)(&(_OMC_LIT_STRUCT126).header) + 3))
355#define _OMC_LIT127_data"wrapFunctionCalls_substitution (COMPLEX_EQUATION)" "wrapFunctionCalls_substitution (COMPLEX_EQUATION)"
356static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT127,49,_OMC_LIT127_data)struct { mmc_uint_t header; const char data[(49)+1]; } _OMC_LIT_STRUCT127
= { ((((mmc_uint_t)49)<<(3))+((1<<(3+3))+5)), "wrapFunctionCalls_substitution (COMPLEX_EQUATION)"
}
;
357#define _OMC_LIT127((void*)((char*)(&(_OMC_LIT_STRUCT127).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT127)((void*)((char*)(&(_OMC_LIT_STRUCT127).header) + 3))
358#define _OMC_LIT128_data"isEquationRedundant? yes" "isEquationRedundant? yes"
359static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT128,24,_OMC_LIT128_data)struct { mmc_uint_t header; const char data[(24)+1]; } _OMC_LIT_STRUCT128
= { ((((mmc_uint_t)24)<<(3))+((1<<(3+3))+5)), "isEquationRedundant? yes"
}
;
360#define _OMC_LIT128((void*)((char*)(&(_OMC_LIT_STRUCT128).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT128)((void*)((char*)(&(_OMC_LIT_STRUCT128).header) + 3))
361#define _OMC_LIT129_data"isEquationRedundant? no" "isEquationRedundant? no"
362static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT129,23,_OMC_LIT129_data)struct { mmc_uint_t header; const char data[(23)+1]; } _OMC_LIT_STRUCT129
= { ((((mmc_uint_t)23)<<(3))+((1<<(3+3))+5)), "isEquationRedundant? no"
}
;
363#define _OMC_LIT129((void*)((char*)(&(_OMC_LIT_STRUCT129).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT129)((void*)((char*)(&(_OMC_LIT_STRUCT129).header) + 3))
364#define _OMC_LIT130_data"wrapFunctionCalls_substitution (EQUATION)" "wrapFunctionCalls_substitution (EQUATION)"
365static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT130,41,_OMC_LIT130_data)struct { mmc_uint_t header; const char data[(41)+1]; } _OMC_LIT_STRUCT130
= { ((((mmc_uint_t)41)<<(3))+((1<<(3+3))+5)), "wrapFunctionCalls_substitution (EQUATION)"
}
;
366#define _OMC_LIT130((void*)((char*)(&(_OMC_LIT_STRUCT130).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT130)((void*)((char*)(&(_OMC_LIT_STRUCT130).header) + 3))
367#define _OMC_LIT131_data"simulation" "simulation"
368static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT131,10,_OMC_LIT131_data)struct { mmc_uint_t header; const char data[(10)+1]; } _OMC_LIT_STRUCT131
= { ((((mmc_uint_t)10)<<(3))+((1<<(3+3))+5)), "simulation"
}
;
369#define _OMC_LIT131((void*)((char*)(&(_OMC_LIT_STRUCT131).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT131)((void*)((char*)(&(_OMC_LIT_STRUCT131).header) + 3))
370static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT132,2,4)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT132
= { (((2) << 10) + (((4) & 255) << 2)),
{&DAE_Exp_RCONST__desc,_OMC_LIT8((void*)((char*)(&(_OMC_LIT_STRUCT8).header) + 3))}};
371#define _OMC_LIT132((void*)((char*)(&(_OMC_LIT_STRUCT132).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT132)((void*)((char*)(&(_OMC_LIT_STRUCT132).header) + 3))
372static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT133,4,3)struct { mmc_uint_t header; const void *data[4]; } _OMC_LIT_STRUCT133
= { (((4) << 10) + (((3) & 255) << 2)),
{&CommonSubExpression_CSE__Equation_CSE__EQUATION__desc,_OMC_LIT132((void*)((char*)(&(_OMC_LIT_STRUCT132).header) + 3)),_OMC_LIT132((void*)((char*)(&(_OMC_LIT_STRUCT132).header) + 3)),MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))}};
373#define _OMC_LIT133((void*)((char*)(&(_OMC_LIT_STRUCT133).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT133)((void*)((char*)(&(_OMC_LIT_STRUCT133).header) + 3))
374#define _OMC_LIT134_data"Start optimization module wrapFunctionCalls for " "Start optimization module wrapFunctionCalls for "
375static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT134,48,_OMC_LIT134_data)struct { mmc_uint_t header; const char data[(48)+1]; } _OMC_LIT_STRUCT134
= { ((((mmc_uint_t)48)<<(3))+((1<<(3+3))+5)), "Start optimization module wrapFunctionCalls for "
}
;
376#define _OMC_LIT134((void*)((char*)(&(_OMC_LIT_STRUCT134).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT134)((void*)((char*)(&(_OMC_LIT_STRUCT134).header) + 3))
377#define _OMC_LIT135_data" DAE\n" " DAE\n"
378static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT135,5,_OMC_LIT135_data)struct { mmc_uint_t header; const char data[(5)+1]; } _OMC_LIT_STRUCT135
= { ((((mmc_uint_t)5)<<(3))+((1<<(3+3))+5)), " DAE\n"
}
;
379#define _OMC_LIT135((void*)((char*)(&(_OMC_LIT_STRUCT135).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT135)((void*)((char*)(&(_OMC_LIT_STRUCT135).header) + 3))
380#define _OMC_LIT136_data"###############################################################" "###############################################################"
381static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT136,63,_OMC_LIT136_data)struct { mmc_uint_t header; const char data[(63)+1]; } _OMC_LIT_STRUCT136
= { ((((mmc_uint_t)63)<<(3))+((1<<(3+3))+5)), "###############################################################"
}
;
382#define _OMC_LIT136((void*)((char*)(&(_OMC_LIT_STRUCT136).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT136)((void*)((char*)(&(_OMC_LIT_STRUCT136).header) + 3))
383#define _OMC_LIT137_data"\n\n\n" "\n\n\n"
384static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT137,3,_OMC_LIT137_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT137
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "\n\n\n"
}
;
385#define _OMC_LIT137((void*)((char*)(&(_OMC_LIT_STRUCT137).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT137)((void*)((char*)(&(_OMC_LIT_STRUCT137).header) + 3))
386#define _OMC_LIT138_data"Phase 0: Set up data structure\n###############################################################\n" "Phase 0: Set up data structure\n###############################################################\n"
387static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT138,95,_OMC_LIT138_data)struct { mmc_uint_t header; const char data[(95)+1]; } _OMC_LIT_STRUCT138
= { ((((mmc_uint_t)95)<<(3))+((1<<(3+3))+5)), "Phase 0: Set up data structure\n###############################################################\n"
}
;
388#define _OMC_LIT138((void*)((char*)(&(_OMC_LIT_STRUCT138).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT138)((void*)((char*)(&(_OMC_LIT_STRUCT138).header) + 3))
389#define _OMC_LIT139_data"globalKnownVars before WFC" "globalKnownVars before WFC"
390static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT139,26,_OMC_LIT139_data)struct { mmc_uint_t header; const char data[(26)+1]; } _OMC_LIT_STRUCT139
= { ((((mmc_uint_t)26)<<(3))+((1<<(3+3))+5)), "globalKnownVars before WFC"
}
;
391#define _OMC_LIT139((void*)((char*)(&(_OMC_LIT_STRUCT139).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT139)((void*)((char*)(&(_OMC_LIT_STRUCT139).header) + 3))
392#define _OMC_LIT140_data"globalKnownVarHT before algorithm\n========================================\n" "globalKnownVarHT before algorithm\n========================================\n"
393static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT140,75,_OMC_LIT140_data)struct { mmc_uint_t header; const char data[(75)+1]; } _OMC_LIT_STRUCT140
= { ((((mmc_uint_t)75)<<(3))+((1<<(3+3))+5)), "globalKnownVarHT before algorithm\n========================================\n"
}
;
394#define _OMC_LIT140((void*)((char*)(&(_OMC_LIT_STRUCT140).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT140)((void*)((char*)(&(_OMC_LIT_STRUCT140).header) + 3))
395#define _OMC_LIT141_data"\n\nHandle system (belongs to " "\n\nHandle system (belongs to "
396static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT141,28,_OMC_LIT141_data)struct { mmc_uint_t header; const char data[(28)+1]; } _OMC_LIT_STRUCT141
= { ((((mmc_uint_t)28)<<(3))+((1<<(3+3))+5)), "\n\nHandle system (belongs to "
}
;
397#define _OMC_LIT141((void*)((char*)(&(_OMC_LIT_STRUCT141).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT141)((void*)((char*)(&(_OMC_LIT_STRUCT141).header) + 3))
398#define _OMC_LIT142_data" DAE):\n" " DAE):\n"
399static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT142,7,_OMC_LIT142_data)struct { mmc_uint_t header; const char data[(7)+1]; } _OMC_LIT_STRUCT142
= { ((((mmc_uint_t)7)<<(3))+((1<<(3+3))+5)), " DAE):\n"
}
;
400#define _OMC_LIT142((void*)((char*)(&(_OMC_LIT_STRUCT142).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT142)((void*)((char*)(&(_OMC_LIT_STRUCT142).header) + 3))
401#define _OMC_LIT143_data"Variables" "Variables"
402static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT143,9,_OMC_LIT143_data)struct { mmc_uint_t header; const char data[(9)+1]; } _OMC_LIT_STRUCT143
= { ((((mmc_uint_t)9)<<(3))+((1<<(3+3))+5)), "Variables"
}
;
403#define _OMC_LIT143((void*)((char*)(&(_OMC_LIT_STRUCT143).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT143)((void*)((char*)(&(_OMC_LIT_STRUCT143).header) + 3))
404#define _OMC_LIT144_data"Equations" "Equations"
405static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT144,9,_OMC_LIT144_data)struct { mmc_uint_t header; const char data[(9)+1]; } _OMC_LIT_STRUCT144
= { ((((mmc_uint_t)9)<<(3))+((1<<(3+3))+5)), "Equations"
}
;
406#define _OMC_LIT144((void*)((char*)(&(_OMC_LIT_STRUCT144).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT144)((void*)((char*)(&(_OMC_LIT_STRUCT144).header) + 3))
407#define _OMC_LIT145_data"\nPhase 1: Analysis\n###############################################################\n" "\nPhase 1: Analysis\n###############################################################\n"
408static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT145,83,_OMC_LIT145_data)struct { mmc_uint_t header; const char data[(83)+1]; } _OMC_LIT_STRUCT145
= { ((((mmc_uint_t)83)<<(3))+((1<<(3+3))+5)), "\nPhase 1: Analysis\n###############################################################\n"
}
;
409#define _OMC_LIT145((void*)((char*)(&(_OMC_LIT_STRUCT145).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT145)((void*)((char*)(&(_OMC_LIT_STRUCT145).header) + 3))
410#define _OMC_LIT146_data"Hastable after analysis\n========================================\n" "Hastable after analysis\n========================================\n"
411static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT146,65,_OMC_LIT146_data)struct { mmc_uint_t header; const char data[(65)+1]; } _OMC_LIT_STRUCT146
= { ((((mmc_uint_t)65)<<(3))+((1<<(3+3))+5)), "Hastable after analysis\n========================================\n"
}
;
412#define _OMC_LIT146((void*)((char*)(&(_OMC_LIT_STRUCT146).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT146)((void*)((char*)(&(_OMC_LIT_STRUCT146).header) + 3))
413#define _OMC_LIT147_data"\nExpandable Array after analysis" "\nExpandable Array after analysis"
414static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT147,32,_OMC_LIT147_data)struct { mmc_uint_t header; const char data[(32)+1]; } _OMC_LIT_STRUCT147
= { ((((mmc_uint_t)32)<<(3))+((1<<(3+3))+5)), "\nExpandable Array after analysis"
}
;
415#define _OMC_LIT147((void*)((char*)(&(_OMC_LIT_STRUCT147).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT147)((void*)((char*)(&(_OMC_LIT_STRUCT147).header) + 3))
416#define _OMC_LIT148_data"\n###############################################################\nNo function calls found. Exiting the algorithm...\n\n\n" "\n###############################################################\nNo function calls found. Exiting the algorithm...\n\n\n"
417static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT148,117,_OMC_LIT148_data)struct { mmc_uint_t header; const char data[(117)+1]; } _OMC_LIT_STRUCT148
= { ((((mmc_uint_t)117)<<(3))+((1<<(3+3))+5)), "\n###############################################################\nNo function calls found. Exiting the algorithm...\n\n\n"
}
;
418#define _OMC_LIT148((void*)((char*)(&(_OMC_LIT_STRUCT148).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT148)((void*)((char*)(&(_OMC_LIT_STRUCT148).header) + 3))
419#define _OMC_LIT149_data"\n\nPhase 2: Dependencies\n###############################################################\n\n" "\n\nPhase 2: Dependencies\n###############################################################\n\n"
420static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT149,89,_OMC_LIT149_data)struct { mmc_uint_t header; const char data[(89)+1]; } _OMC_LIT_STRUCT149
= { ((((mmc_uint_t)89)<<(3))+((1<<(3+3))+5)), "\n\nPhase 2: Dependencies\n###############################################################\n\n"
}
;
421#define _OMC_LIT149((void*)((char*)(&(_OMC_LIT_STRUCT149).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT149)((void*)((char*)(&(_OMC_LIT_STRUCT149).header) + 3))
422#define _OMC_LIT150_data"Hashtable after dependencies\n========================================\n" "Hashtable after dependencies\n========================================\n"
423static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT150,70,_OMC_LIT150_data)struct { mmc_uint_t header; const char data[(70)+1]; } _OMC_LIT_STRUCT150
= { ((((mmc_uint_t)70)<<(3))+((1<<(3+3))+5)), "Hashtable after dependencies\n========================================\n"
}
;
424#define _OMC_LIT150((void*)((char*)(&(_OMC_LIT_STRUCT150).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT150)((void*)((char*)(&(_OMC_LIT_STRUCT150).header) + 3))
425#define _OMC_LIT151_data"\nExpandable Array after dependencies" "\nExpandable Array after dependencies"
426static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT151,36,_OMC_LIT151_data)struct { mmc_uint_t header; const char data[(36)+1]; } _OMC_LIT_STRUCT151
= { ((((mmc_uint_t)36)<<(3))+((1<<(3+3))+5)), "\nExpandable Array after dependencies"
}
;
427#define _OMC_LIT151((void*)((char*)(&(_OMC_LIT_STRUCT151).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT151)((void*)((char*)(&(_OMC_LIT_STRUCT151).header) + 3))
428#define _OMC_LIT152_data"\n\nPhase3: Substitution\n###############################################################\n" "\n\nPhase3: Substitution\n###############################################################\n"
429static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT152,87,_OMC_LIT152_data)struct { mmc_uint_t header; const char data[(87)+1]; } _OMC_LIT_STRUCT152
= { ((((mmc_uint_t)87)<<(3))+((1<<(3+3))+5)), "\n\nPhase3: Substitution\n###############################################################\n"
}
;
430#define _OMC_LIT152((void*)((char*)(&(_OMC_LIT_STRUCT152).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT152)((void*)((char*)(&(_OMC_LIT_STRUCT152).header) + 3))
431#define _OMC_LIT153_data"Hashtable after substitution\n========================================\n" "Hashtable after substitution\n========================================\n"
432static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT153,70,_OMC_LIT153_data)struct { mmc_uint_t header; const char data[(70)+1]; } _OMC_LIT_STRUCT153
= { ((((mmc_uint_t)70)<<(3))+((1<<(3+3))+5)), "Hashtable after substitution\n========================================\n"
}
;
433#define _OMC_LIT153((void*)((char*)(&(_OMC_LIT_STRUCT153).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT153)((void*)((char*)(&(_OMC_LIT_STRUCT153).header) + 3))
434#define _OMC_LIT154_data"\nExpandable Array after substitution" "\nExpandable Array after substitution"
435static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT154,36,_OMC_LIT154_data)struct { mmc_uint_t header; const char data[(36)+1]; } _OMC_LIT_STRUCT154
= { ((((mmc_uint_t)36)<<(3))+((1<<(3+3))+5)), "\nExpandable Array after substitution"
}
;
436#define _OMC_LIT154((void*)((char*)(&(_OMC_LIT_STRUCT154).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT154)((void*)((char*)(&(_OMC_LIT_STRUCT154).header) + 3))
437#define _OMC_LIT155_data"\n\nPhase 4: Create CSE-Equations\n###############################################################\n\n" "\n\nPhase 4: Create CSE-Equations\n###############################################################\n\n"
438static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT155,97,_OMC_LIT155_data)struct { mmc_uint_t header; const char data[(97)+1]; } _OMC_LIT_STRUCT155
= { ((((mmc_uint_t)97)<<(3))+((1<<(3+3))+5)), "\n\nPhase 4: Create CSE-Equations\n###############################################################\n\n"
}
;
439#define _OMC_LIT155((void*)((char*)(&(_OMC_LIT_STRUCT155).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT155)((void*)((char*)(&(_OMC_LIT_STRUCT155).header) + 3))
440#define _OMC_LIT156_data"After manipulating the system with postOptModule wrapFunctionCalls the system is unbalanced. This indicates that the original system is singular. You can use -d=dumpCSE and -d=dumpCSE_verbose for more information." "After manipulating the system with postOptModule wrapFunctionCalls the system is unbalanced. This indicates that the original system is singular. You can use -d=dumpCSE and -d=dumpCSE_verbose for more information."
441static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT156,213,_OMC_LIT156_data)struct { mmc_uint_t header; const char data[(213)+1]; } _OMC_LIT_STRUCT156
= { ((((mmc_uint_t)213)<<(3))+((1<<(3+3))+5)), "After manipulating the system with postOptModule wrapFunctionCalls the system is unbalanced. This indicates that the original system is singular. You can use -d=dumpCSE and -d=dumpCSE_verbose for more information."
}
;
442#define _OMC_LIT156((void*)((char*)(&(_OMC_LIT_STRUCT156).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT156)((void*)((char*)(&(_OMC_LIT_STRUCT156).header) + 3))
443static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT157,1,3)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT157
= { (((1) << 10) + (((3) & 255) << 2)),
{&BackendDAE_Matching_NO__MATCHING__desc,}};
444#define _OMC_LIT157((void*)((char*)(&(_OMC_LIT_STRUCT157).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT157)((void*)((char*)(&(_OMC_LIT_STRUCT157).header) + 3))
445#define _OMC_LIT158_data"\n\n\n###############################################################\nFinal Results\n###############################################################\n" "\n\n\n###############################################################\nFinal Results\n###############################################################\n"
446static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT158,145,_OMC_LIT158_data)struct { mmc_uint_t header; const char data[(145)+1]; } _OMC_LIT_STRUCT158
= { ((((mmc_uint_t)145)<<(3))+((1<<(3+3))+5)), "\n\n\n###############################################################\nFinal Results\n###############################################################\n"
}
;
447#define _OMC_LIT158((void*)((char*)(&(_OMC_LIT_STRUCT158).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT158)((void*)((char*)(&(_OMC_LIT_STRUCT158).header) + 3))
448#define _OMC_LIT159_data"########### Updated Variable List (" "########### Updated Variable List ("
449static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT159,35,_OMC_LIT159_data)struct { mmc_uint_t header; const char data[(35)+1]; } _OMC_LIT_STRUCT159
= { ((((mmc_uint_t)35)<<(3))+((1<<(3+3))+5)), "########### Updated Variable List ("
}
;
450#define _OMC_LIT159((void*)((char*)(&(_OMC_LIT_STRUCT159).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT159)((void*)((char*)(&(_OMC_LIT_STRUCT159).header) + 3))
451#define _OMC_LIT160_data")" ")"
452static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT160,1,_OMC_LIT160_data)struct { mmc_uint_t header; const char data[(1)+1]; } _OMC_LIT_STRUCT160
= { ((((mmc_uint_t)1)<<(3))+((1<<(3+3))+5)), ")"
}
;
453#define _OMC_LIT160((void*)((char*)(&(_OMC_LIT_STRUCT160).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT160)((void*)((char*)(&(_OMC_LIT_STRUCT160).header) + 3))
454#define _OMC_LIT161_data"########### Updated Equation List (" "########### Updated Equation List ("
455static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT161,35,_OMC_LIT161_data)struct { mmc_uint_t header; const char data[(35)+1]; } _OMC_LIT_STRUCT161
= { ((((mmc_uint_t)35)<<(3))+((1<<(3+3))+5)), "########### Updated Equation List ("
}
;
456#define _OMC_LIT161((void*)((char*)(&(_OMC_LIT_STRUCT161).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT161)((void*)((char*)(&(_OMC_LIT_STRUCT161).header) + 3))
457#define _OMC_LIT162_data"########### Updated globalKnownVars (" "########### Updated globalKnownVars ("
458static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT162,37,_OMC_LIT162_data)struct { mmc_uint_t header; const char data[(37)+1]; } _OMC_LIT_STRUCT162
= { ((((mmc_uint_t)37)<<(3))+((1<<(3+3))+5)), "########### Updated globalKnownVars ("
}
;
459#define _OMC_LIT162((void*)((char*)(&(_OMC_LIT_STRUCT162).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT162)((void*)((char*)(&(_OMC_LIT_STRUCT162).header) + 3))
460#define _OMC_LIT163_data"\n########### CSE Replacements" "\n########### CSE Replacements"
461static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT163,29,_OMC_LIT163_data)struct { mmc_uint_t header; const char data[(29)+1]; } _OMC_LIT_STRUCT163
= { ((((mmc_uint_t)29)<<(3))+((1<<(3+3))+5)), "\n########### CSE Replacements"
}
;
462#define _OMC_LIT163((void*)((char*)(&(_OMC_LIT_STRUCT163).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT163)((void*)((char*)(&(_OMC_LIT_STRUCT163).header) + 3))
463#define _OMC_LIT164_data"\n\n###############################################################" "\n\n###############################################################"
464static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT164,65,_OMC_LIT164_data)struct { mmc_uint_t header; const char data[(65)+1]; } _OMC_LIT_STRUCT164
= { ((((mmc_uint_t)65)<<(3))+((1<<(3+3))+5)), "\n\n###############################################################"
}
;
465#define _OMC_LIT164((void*)((char*)(&(_OMC_LIT_STRUCT164).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT164)((void*)((char*)(&(_OMC_LIT_STRUCT164).header) + 3))
466#define _OMC_LIT165_data"Final EqSystem" "Final EqSystem"
467static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT165,14,_OMC_LIT165_data)struct { mmc_uint_t header; const char data[(14)+1]; } _OMC_LIT_STRUCT165
= { ((((mmc_uint_t)14)<<(3))+((1<<(3+3))+5)), "Final EqSystem"
}
;
468#define _OMC_LIT165((void*)((char*)(&(_OMC_LIT_STRUCT165).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT165)((void*)((char*)(&(_OMC_LIT_STRUCT165).header) + 3))
469#define _OMC_LIT166_data" - " " - "
470static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT166,3,_OMC_LIT166_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT166
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), " - "
}
;
471#define _OMC_LIT166((void*)((char*)(&(_OMC_LIT_STRUCT166).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT166)((void*)((char*)(&(_OMC_LIT_STRUCT166).header) + 3))
472#define _OMC_LIT167_data" - {" " - {"
473static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT167,4,_OMC_LIT167_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT167
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), " - {"
}
;
474#define _OMC_LIT167((void*)((char*)(&(_OMC_LIT_STRUCT167).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT167)((void*)((char*)(&(_OMC_LIT_STRUCT167).header) + 3))
475#include "util/modelica.h"
476
477#include "CommonSubExpression_includes.h"
478
479
480/* default, do not make protected functions static */
481#if !defined(PROTECTED_FUNCTION_STATIC)
482#define PROTECTED_FUNCTION_STATIC
483#endif
484PROTECTED_FUNCTION_STATIC modelica_string omc_CommonSubExpression_printCSE(threadData_t *threadData, modelica_metatype _cse);
485static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_printCSE,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_printCSE
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_printCSEomc_CommonSubExpression_printCSE,0}};
486#define boxvar_CommonSubExpression_printCSE((void*)((char*)(&(boxvar_lit_CommonSubExpression_printCSE
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_printCSE)((void*)((char*)(&(boxvar_lit_CommonSubExpression_printCSE
).header) + 3))
487PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_getTopLevelFactors(threadData_t *threadData, modelica_metatype _exp, modelica_metatype _lstIn);
488static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_getTopLevelFactors,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_getTopLevelFactors
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_getTopLevelFactorsomc_CommonSubExpression_getTopLevelFactors,0}};
489#define boxvar_CommonSubExpression_getTopLevelFactors((void*)((char*)(&(boxvar_lit_CommonSubExpression_getTopLevelFactors
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_getTopLevelFactors)((void*)((char*)(&(boxvar_lit_CommonSubExpression_getTopLevelFactors
).header) + 3))
490PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_cancelExpressions(threadData_t *threadData, modelica_metatype _e1In, modelica_metatype _e2In, modelica_metatype *out_e1Out, modelica_metatype *out_e2Out);
491PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_cancelExpressions(threadData_t *threadData, modelica_metatype _e1In, modelica_metatype _e2In, modelica_metatype *out_e1Out, modelica_metatype *out_e2Out);
492static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_cancelExpressions,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_cancelExpressions
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_cancelExpressions,0}};
493#define boxvar_CommonSubExpression_cancelExpressions((void*)((char*)(&(boxvar_lit_CommonSubExpression_cancelExpressions
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_cancelExpressions)((void*)((char*)(&(boxvar_lit_CommonSubExpression_cancelExpressions
).header) + 3))
494PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_hasAlgebraicOperationsOnly(threadData_t *threadData, modelica_metatype _exp);
495PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_hasAlgebraicOperationsOnly(threadData_t *threadData, modelica_metatype _exp);
496static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_hasAlgebraicOperationsOnly,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_hasAlgebraicOperationsOnly
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_hasAlgebraicOperationsOnly,0}};
497#define boxvar_CommonSubExpression_hasAlgebraicOperationsOnly((void*)((char*)(&(boxvar_lit_CommonSubExpression_hasAlgebraicOperationsOnly
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_hasAlgebraicOperationsOnly)((void*)((char*)(&(boxvar_lit_CommonSubExpression_hasAlgebraicOperationsOnly
).header) + 3))
498PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_commonSubExpressionUpdate(threadData_t *threadData, modelica_metatype _tplsIn, modelica_metatype _m, modelica_metatype _mT, modelica_metatype _sysIn);
499static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_commonSubExpressionUpdate,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_commonSubExpressionUpdate
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_commonSubExpressionUpdateomc_CommonSubExpression_commonSubExpressionUpdate,0}};
500#define boxvar_CommonSubExpression_commonSubExpressionUpdate((void*)((char*)(&(boxvar_lit_CommonSubExpression_commonSubExpressionUpdate
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_commonSubExpressionUpdate)((void*)((char*)(&(boxvar_lit_CommonSubExpression_commonSubExpressionUpdate
).header) + 3))
501PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_getCSE3(threadData_t *threadData, modelica_metatype _partition, modelica_metatype _m, modelica_metatype _mT, modelica_metatype _vars, modelica_metatype _eqs, modelica_metatype _eqMap, modelica_metatype _varMap, modelica_metatype _cseIn);
502static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_getCSE3,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_getCSE3
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_getCSE3omc_CommonSubExpression_getCSE3,0}};
503#define boxvar_CommonSubExpression_getCSE3((void*)((char*)(&(boxvar_lit_CommonSubExpression_getCSE3
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_getCSE3)((void*)((char*)(&(boxvar_lit_CommonSubExpression_getCSE3
).header) + 3))
504PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_getCSE2(threadData_t *threadData, modelica_metatype _partition, modelica_metatype _m, modelica_metatype _mT, modelica_metatype _vars, modelica_metatype _eqs, modelica_metatype _eqMap, modelica_metatype _varMap, modelica_metatype _cseIn);
505static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_getCSE2,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_getCSE2
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_getCSE2omc_CommonSubExpression_getCSE2,0}};
506#define boxvar_CommonSubExpression_getCSE2((void*)((char*)(&(boxvar_lit_CommonSubExpression_getCSE2
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_getCSE2)((void*)((char*)(&(boxvar_lit_CommonSubExpression_getCSE2
).header) + 3))
507PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_shortenPaths(threadData_t *threadData, modelica_metatype _allPartitions, modelica_metatype _mIn, modelica_metatype _mTIn, modelica_metatype _allVars, modelica_metatype _allEqs, modelica_metatype _eqMap, modelica_metatype _varMap, modelica_metatype _cseIn, modelica_boolean _isInitial);
508PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_shortenPaths(threadData_t *threadData, modelica_metatype _allPartitions, modelica_metatype _mIn, modelica_metatype _mTIn, modelica_metatype _allVars, modelica_metatype _allEqs, modelica_metatype _eqMap, modelica_metatype _varMap, modelica_metatype _cseIn, modelica_metatype _isInitial);
509static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_shortenPaths,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_shortenPaths
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_shortenPaths,0}};
510#define boxvar_CommonSubExpression_shortenPaths((void*)((char*)(&(boxvar_lit_CommonSubExpression_shortenPaths
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_shortenPaths)((void*)((char*)(&(boxvar_lit_CommonSubExpression_shortenPaths
).header) + 3))
511PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_commonSubExpressionFind(threadData_t *threadData, modelica_metatype _mIn, modelica_metatype _mTIn, modelica_metatype _varsIn, modelica_metatype _eqsIn, modelica_boolean _isInitial);
512PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_commonSubExpressionFind(threadData_t *threadData, modelica_metatype _mIn, modelica_metatype _mTIn, modelica_metatype _varsIn, modelica_metatype _eqsIn, modelica_metatype _isInitial);
513static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_commonSubExpressionFind,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_commonSubExpressionFind
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_commonSubExpressionFind,0}};
514#define boxvar_CommonSubExpression_commonSubExpressionFind((void*)((char*)(&(boxvar_lit_CommonSubExpression_commonSubExpressionFind
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_commonSubExpressionFind)((void*)((char*)(&(boxvar_lit_CommonSubExpression_commonSubExpressionFind
).header) + 3))
515PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_commonSubExpression(threadData_t *threadData, modelica_metatype _sysIn, modelica_metatype _sharedIn, modelica_metatype *out_sharedOut);
516static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_commonSubExpression,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_commonSubExpression
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_commonSubExpressionomc_CommonSubExpression_commonSubExpression,0}};
517#define boxvar_CommonSubExpression_commonSubExpression((void*)((char*)(&(boxvar_lit_CommonSubExpression_commonSubExpression
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_commonSubExpression)((void*)((char*)(&(boxvar_lit_CommonSubExpression_commonSubExpression
).header) + 3))
518PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_checkOp(threadData_t *threadData, modelica_metatype _inOp);
519PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_checkOp(threadData_t *threadData, modelica_metatype _inOp);
520static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_checkOp,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_checkOp
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_checkOp,0}};
521#define boxvar_CommonSubExpression_checkOp((void*)((char*)(&(boxvar_lit_CommonSubExpression_checkOp
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_checkOp)((void*)((char*)(&(boxvar_lit_CommonSubExpression_checkOp
).header) + 3))
522PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_isCommutative(threadData_t *threadData, modelica_metatype _inOp);
523PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_isCommutative(threadData_t *threadData, modelica_metatype _inOp);
524static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_isCommutative,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_isCommutative
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_isCommutative,0}};
525#define boxvar_CommonSubExpression_isCommutative((void*)((char*)(&(boxvar_lit_CommonSubExpression_isCommutative
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_isCommutative)((void*)((char*)(&(boxvar_lit_CommonSubExpression_isCommutative
).header) + 3))
526PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_createStatistics__main(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inTuple, modelica_boolean *out_cont, modelica_metatype *out_outTuple);
527PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_createStatistics__main(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inTuple, modelica_metatype *out_cont, modelica_metatype *out_outTuple);
528static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_createStatistics__main,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_createStatistics__main
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_createStatistics__main,0}};
529#define boxvar_CommonSubExpression_createStatistics__main((void*)((char*)(&(boxvar_lit_CommonSubExpression_createStatistics__main
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_createStatistics__main)((void*)((char*)(&(boxvar_lit_CommonSubExpression_createStatistics__main
).header) + 3))
530PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_createStatistics1(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inTuple, modelica_metatype *out_outTuple);
531static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_createStatistics1,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_createStatistics1
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_createStatistics1omc_CommonSubExpression_createStatistics1,0}};
532#define boxvar_CommonSubExpression_createStatistics1((void*)((char*)(&(boxvar_lit_CommonSubExpression_createStatistics1
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_createStatistics1)((void*)((char*)(&(boxvar_lit_CommonSubExpression_createStatistics1
).header) + 3))
533PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_createStatistics(threadData_t *threadData, modelica_metatype _inEq, modelica_metatype _inTuple, modelica_metatype *out_outTuple);
534static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_createStatistics,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_createStatistics
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_createStatisticsomc_CommonSubExpression_createStatistics,0}};
535#define boxvar_CommonSubExpression_createStatistics((void*)((char*)(&(boxvar_lit_CommonSubExpression_createStatistics
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_createStatistics)((void*)((char*)(&(boxvar_lit_CommonSubExpression_createStatistics
).header) + 3))
536PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_substituteCSE__main(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inTuple, modelica_boolean *out_cont, modelica_metatype *out_outTuple);
537PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_substituteCSE__main(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inTuple, modelica_metatype *out_cont, modelica_metatype *out_outTuple);
538static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_substituteCSE__main,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_substituteCSE__main
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_substituteCSE__main,0}};
539#define boxvar_CommonSubExpression_substituteCSE__main((void*)((char*)(&(boxvar_lit_CommonSubExpression_substituteCSE__main
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_substituteCSE__main)((void*)((char*)(&(boxvar_lit_CommonSubExpression_substituteCSE__main
).header) + 3))
540PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_substituteCSE1(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inTuple, modelica_metatype *out_outTuple);
541static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_substituteCSE1,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_substituteCSE1
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_substituteCSE1omc_CommonSubExpression_substituteCSE1,0}};
542#define boxvar_CommonSubExpression_substituteCSE1((void*)((char*)(&(boxvar_lit_CommonSubExpression_substituteCSE1
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_substituteCSE1)((void*)((char*)(&(boxvar_lit_CommonSubExpression_substituteCSE1
).header) + 3))
543PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_substituteCSE(threadData_t *threadData, modelica_metatype _inEq, modelica_metatype _inTuple, modelica_metatype *out_outTuple);
544static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_substituteCSE,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_substituteCSE
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_substituteCSEomc_CommonSubExpression_substituteCSE,0}};
545#define boxvar_CommonSubExpression_substituteCSE((void*)((char*)(&(boxvar_lit_CommonSubExpression_substituteCSE
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_substituteCSE)((void*)((char*)(&(boxvar_lit_CommonSubExpression_substituteCSE
).header) + 3))
546PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_CSE1(threadData_t *threadData, modelica_metatype _inSystem, modelica_metatype _inShared, modelica_integer _inIndex, modelica_metatype *out_outShared, modelica_integer *out_outIndex);
547PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_CSE1(threadData_t *threadData, modelica_metatype _inSystem, modelica_metatype _inShared, modelica_metatype _inIndex, modelica_metatype *out_outShared, modelica_metatype *out_outIndex);
548static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_CSE1,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_CSE1
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_CSE1,0}};
549#define boxvar_CommonSubExpression_CSE1((void*)((char*)(&(boxvar_lit_CommonSubExpression_CSE1).header
) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_CSE1)((void*)((char*)(&(boxvar_lit_CommonSubExpression_CSE1).header
) + 3))
550PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_createVarsForExp(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inAccumVarLst);
551static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_createVarsForExp,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_createVarsForExp
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_createVarsForExpomc_CommonSubExpression_createVarsForExp,0}};
552#define boxvar_CommonSubExpression_createVarsForExp((void*)((char*)(&(boxvar_lit_CommonSubExpression_createVarsForExp
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_createVarsForExp)((void*)((char*)(&(boxvar_lit_CommonSubExpression_createVarsForExp
).header) + 3))
553PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_createVarsForExp__onlyCSECrefs(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inAccumVarLst);
554static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_createVarsForExp__onlyCSECrefs,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_createVarsForExp__onlyCSECrefs
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_createVarsForExp__onlyCSECrefsomc_CommonSubExpression_createVarsForExp__onlyCSECrefs,0}};
555#define boxvar_CommonSubExpression_createVarsForExp__onlyCSECrefs((void*)((char*)(&(boxvar_lit_CommonSubExpression_createVarsForExp__onlyCSECrefs
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_createVarsForExp__onlyCSECrefs)((void*)((char*)(&(boxvar_lit_CommonSubExpression_createVarsForExp__onlyCSECrefs
).header) + 3))
556PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_createReturnExp(threadData_t *threadData, modelica_metatype _inType, modelica_integer _inIndex, modelica_string _inPrefix, modelica_boolean _inComplex, modelica_integer *out_outIndex);
557PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_createReturnExp(threadData_t *threadData, modelica_metatype _inType, modelica_metatype _inIndex, modelica_metatype _inPrefix, modelica_metatype _inComplex, modelica_metatype *out_outIndex);
558static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_createReturnExp,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_createReturnExp
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_createReturnExp,0}};
559#define boxvar_CommonSubExpression_createReturnExp((void*)((char*)(&(boxvar_lit_CommonSubExpression_createReturnExp
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_createReturnExp)((void*)((char*)(&(boxvar_lit_CommonSubExpression_createReturnExp
).header) + 3))
560PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_isCallRecordConstructor(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _funcsIn);
561PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_isCallRecordConstructor(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _funcsIn);
562static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_isCallRecordConstructor,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_isCallRecordConstructor
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_isCallRecordConstructor,0}};
563#define boxvar_CommonSubExpression_isCallRecordConstructor((void*)((char*)(&(boxvar_lit_CommonSubExpression_isCallRecordConstructor
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_isCallRecordConstructor)((void*)((char*)(&(boxvar_lit_CommonSubExpression_isCallRecordConstructor
).header) + 3))
564PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_isSkipCase__advanced(threadData_t *threadData, modelica_metatype _inCall);
565PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_isSkipCase__advanced(threadData_t *threadData, modelica_metatype _inCall);
566static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_isSkipCase__advanced,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_isSkipCase__advanced
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_isSkipCase__advanced,0}};
567#define boxvar_CommonSubExpression_isSkipCase__advanced((void*)((char*)(&(boxvar_lit_CommonSubExpression_isSkipCase__advanced
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_isSkipCase__advanced)((void*)((char*)(&(boxvar_lit_CommonSubExpression_isSkipCase__advanced
).header) + 3))
568PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_isSkipCase(threadData_t *threadData, modelica_metatype _inCall, modelica_metatype _functionTree);
569PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_isSkipCase(threadData_t *threadData, modelica_metatype _inCall, modelica_metatype _functionTree);
570static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_isSkipCase,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_isSkipCase
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_isSkipCase,0}};
571#define boxvar_CommonSubExpression_isSkipCase((void*)((char*)(&(boxvar_lit_CommonSubExpression_isSkipCase
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_isSkipCase)((void*)((char*)(&(boxvar_lit_CommonSubExpression_isSkipCase
).header) + 3))
572PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_isWildCref(threadData_t *threadData, modelica_metatype _inExp);
573PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_isWildCref(threadData_t *threadData, modelica_metatype _inExp);
574static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_isWildCref,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_isWildCref
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_isWildCref,0}};
575#define boxvar_CommonSubExpression_isWildCref((void*)((char*)(&(boxvar_lit_CommonSubExpression_isWildCref
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_isWildCref)((void*)((char*)(&(boxvar_lit_CommonSubExpression_isWildCref
).header) + 3))
576PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_mergeCSETuples2(threadData_t *threadData, modelica_metatype _inExpLst1, modelica_metatype _inExpLst2);
577static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_mergeCSETuples2,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_mergeCSETuples2
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_mergeCSETuples2omc_CommonSubExpression_mergeCSETuples2,0}};
578#define boxvar_CommonSubExpression_mergeCSETuples2((void*)((char*)(&(boxvar_lit_CommonSubExpression_mergeCSETuples2
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_mergeCSETuples2)((void*)((char*)(&(boxvar_lit_CommonSubExpression_mergeCSETuples2
).header) + 3))
579PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_mergeCSETuples(threadData_t *threadData, modelica_metatype _inCref1, modelica_metatype _inCref2);
580static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_mergeCSETuples,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_mergeCSETuples
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_mergeCSETuplesomc_CommonSubExpression_mergeCSETuples,0}};
581#define boxvar_CommonSubExpression_mergeCSETuples((void*)((char*)(&(boxvar_lit_CommonSubExpression_mergeCSETuples
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_mergeCSETuples)((void*)((char*)(&(boxvar_lit_CommonSubExpression_mergeCSETuples
).header) + 3))
582PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_isCallAndRecord(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inExp2);
583PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_isCallAndRecord(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inExp2);
584static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_isCallAndRecord,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_isCallAndRecord
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_isCallAndRecord,0}};
585#define boxvar_CommonSubExpression_isCallAndRecord((void*)((char*)(&(boxvar_lit_CommonSubExpression_isCallAndRecord
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_isCallAndRecord)((void*)((char*)(&(boxvar_lit_CommonSubExpression_isCallAndRecord
).header) + 3))
586PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_isCallAndTuple(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inExp2);
587PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_isCallAndTuple(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inExp2);
588static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_isCallAndTuple,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_isCallAndTuple
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_isCallAndTuple,0}};
589#define boxvar_CommonSubExpression_isCallAndTuple((void*)((char*)(&(boxvar_lit_CommonSubExpression_isCallAndTuple
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_isCallAndTuple)((void*)((char*)(&(boxvar_lit_CommonSubExpression_isCallAndTuple
).header) + 3))
590PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_isConstAndCall(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inExp2);
591PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_isConstAndCall(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inExp2);
592static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_isConstAndCall,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_isConstAndCall
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_isConstAndCall,0}};
593#define boxvar_CommonSubExpression_isConstAndCall((void*)((char*)(&(boxvar_lit_CommonSubExpression_isConstAndCall
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_isConstAndCall)((void*)((char*)(&(boxvar_lit_CommonSubExpression_isConstAndCall
).header) + 3))
594PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_isTsubAndCref(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inExp2);
595PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_isTsubAndCref(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inExp2);
596static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_isTsubAndCref,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_isTsubAndCref
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_isTsubAndCref,0}};
597#define boxvar_CommonSubExpression_isTsubAndCref((void*)((char*)(&(boxvar_lit_CommonSubExpression_isTsubAndCref
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_isTsubAndCref)((void*)((char*)(&(boxvar_lit_CommonSubExpression_isTsubAndCref
).header) + 3))
598PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_isCallAndCref(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inExp2);
599PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_isCallAndCref(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inExp2);
600static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_isCallAndCref,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_isCallAndCref
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_isCallAndCref,0}};
601#define boxvar_CommonSubExpression_isCallAndCref((void*)((char*)(&(boxvar_lit_CommonSubExpression_isCallAndCref
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_isCallAndCref)((void*)((char*)(&(boxvar_lit_CommonSubExpression_isCallAndCref
).header) + 3))
602PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_isCall(threadData_t *threadData, modelica_metatype _inExp);
603PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_isCall(threadData_t *threadData, modelica_metatype _inExp);
604static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_isCall,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_isCall
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_isCall,0}};
605#define boxvar_CommonSubExpression_isCall((void*)((char*)(&(boxvar_lit_CommonSubExpression_isCall)
.header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_isCall)((void*)((char*)(&(boxvar_lit_CommonSubExpression_isCall)
.header) + 3))
606PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_isEquationRedundant__flatten2(threadData_t *threadData, modelica_metatype _lhs, modelica_metatype _rhs, modelica_metatype _D_24in_globalKnownVarHT, modelica_metatype _D_24in_globalKnownVars, modelica_metatype _D_24in_orderedVars, modelica_metatype *out_globalKnownVars, modelica_metatype *out_orderedVars, modelica_boolean *out_result);
607PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_isEquationRedundant__flatten2(threadData_t *threadData, modelica_metatype _lhs, modelica_metatype _rhs, modelica_metatype _D_24in_globalKnownVarHT, modelica_metatype _D_24in_globalKnownVars, modelica_metatype _D_24in_orderedVars, modelica_metatype *out_globalKnownVars, modelica_metatype *out_orderedVars, modelica_metatype *out_result);
608static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_isEquationRedundant__flatten2,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_isEquationRedundant__flatten2
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_isEquationRedundant__flatten2,0}};
609#define boxvar_CommonSubExpression_isEquationRedundant__flatten2((void*)((char*)(&(boxvar_lit_CommonSubExpression_isEquationRedundant__flatten2
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_isEquationRedundant__flatten2)((void*)((char*)(&(boxvar_lit_CommonSubExpression_isEquationRedundant__flatten2
).header) + 3))
610PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_isEquationRedundant__flatten(threadData_t *threadData, modelica_metatype _inEq, modelica_metatype _D_24in_globalKnownVarHT, modelica_metatype _D_24in_globalKnownVars, modelica_metatype _D_24in_orderedVars, modelica_metatype *out_globalKnownVars, modelica_metatype *out_orderedVars, modelica_boolean *out_outB, modelica_boolean *out_isGlobalKnown);
611PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_isEquationRedundant__flatten(threadData_t *threadData, modelica_metatype _inEq, modelica_metatype _D_24in_globalKnownVarHT, modelica_metatype _D_24in_globalKnownVars, modelica_metatype _D_24in_orderedVars, modelica_metatype *out_globalKnownVars, modelica_metatype *out_orderedVars, modelica_metatype *out_outB, modelica_metatype *out_isGlobalKnown);
612static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_isEquationRedundant__flatten,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_isEquationRedundant__flatten
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_isEquationRedundant__flatten,0}};
613#define boxvar_CommonSubExpression_isEquationRedundant__flatten((void*)((char*)(&(boxvar_lit_CommonSubExpression_isEquationRedundant__flatten
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_isEquationRedundant__flatten)((void*)((char*)(&(boxvar_lit_CommonSubExpression_isEquationRedundant__flatten
).header) + 3))
614PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_isEquationRedundant2(threadData_t *threadData, modelica_metatype _lhs, modelica_metatype _rhs);
615PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_isEquationRedundant2(threadData_t *threadData, modelica_metatype _lhs, modelica_metatype _rhs);
616static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_isEquationRedundant2,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_isEquationRedundant2
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_isEquationRedundant2,0}};
617#define boxvar_CommonSubExpression_isEquationRedundant2((void*)((char*)(&(boxvar_lit_CommonSubExpression_isEquationRedundant2
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_isEquationRedundant2)((void*)((char*)(&(boxvar_lit_CommonSubExpression_isEquationRedundant2
).header) + 3))
618PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_isEquationRedundant(threadData_t *threadData, modelica_metatype _inEq);
619PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_isEquationRedundant(threadData_t *threadData, modelica_metatype _inEq);
620static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_isEquationRedundant,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_isEquationRedundant
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_isEquationRedundant,0}};
621#define boxvar_CommonSubExpression_isEquationRedundant((void*)((char*)(&(boxvar_lit_CommonSubExpression_isEquationRedundant
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_isEquationRedundant)((void*)((char*)(&(boxvar_lit_CommonSubExpression_isEquationRedundant
).header) + 3))
622PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_getTheRightPattern(threadData_t *threadData, modelica_metatype _inExp1, modelica_metatype _inExp2, modelica_metatype *out_outExp2);
623static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_getTheRightPattern,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_getTheRightPattern
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_getTheRightPatternomc_CommonSubExpression_getTheRightPattern,0}};
624#define boxvar_CommonSubExpression_getTheRightPattern((void*)((char*)(&(boxvar_lit_CommonSubExpression_getTheRightPattern
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_getTheRightPattern)((void*)((char*)(&(boxvar_lit_CommonSubExpression_getTheRightPattern
).header) + 3))
625PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_wrapFunctionCalls__analysis3(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inTuple, modelica_boolean *out_cont, modelica_metatype *out_outTuple);
626PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_wrapFunctionCalls__analysis3(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inTuple, modelica_metatype *out_cont, modelica_metatype *out_outTuple);
627static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_wrapFunctionCalls__analysis3,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_wrapFunctionCalls__analysis3
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_wrapFunctionCalls__analysis3,0}};
628#define boxvar_CommonSubExpression_wrapFunctionCalls__analysis3((void*)((char*)(&(boxvar_lit_CommonSubExpression_wrapFunctionCalls__analysis3
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_wrapFunctionCalls__analysis3)((void*)((char*)(&(boxvar_lit_CommonSubExpression_wrapFunctionCalls__analysis3
).header) + 3))
629PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_wrapFunctionCalls__analysis2(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inTuple, modelica_metatype *out_outTuple);
630static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_wrapFunctionCalls__analysis2,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_wrapFunctionCalls__analysis2
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_wrapFunctionCalls__analysis2omc_CommonSubExpression_wrapFunctionCalls__analysis2,0}};
631#define boxvar_CommonSubExpression_wrapFunctionCalls__analysis2((void*)((char*)(&(boxvar_lit_CommonSubExpression_wrapFunctionCalls__analysis2
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_wrapFunctionCalls__analysis2)((void*)((char*)(&(boxvar_lit_CommonSubExpression_wrapFunctionCalls__analysis2
).header) + 3))
632PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_createCrefForTsub(threadData_t *threadData, modelica_integer _length, modelica_integer _ix, modelica_metatype _cref);
633PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_createCrefForTsub(threadData_t *threadData, modelica_metatype _length, modelica_metatype _ix, modelica_metatype _cref);
634static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_createCrefForTsub,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_createCrefForTsub
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_createCrefForTsub,0}};
635#define boxvar_CommonSubExpression_createCrefForTsub((void*)((char*)(&(boxvar_lit_CommonSubExpression_createCrefForTsub
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_createCrefForTsub)((void*)((char*)(&(boxvar_lit_CommonSubExpression_createCrefForTsub
).header) + 3))
636PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_wrapFunctionCalls__analysis(threadData_t *threadData, modelica_metatype _inEq, modelica_metatype _inTuple, modelica_metatype *out_outTuple);
637static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_wrapFunctionCalls__analysis,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_wrapFunctionCalls__analysis
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_wrapFunctionCalls__analysisomc_CommonSubExpression_wrapFunctionCalls__analysis,0}};
638#define boxvar_CommonSubExpression_wrapFunctionCalls__analysis((void*)((char*)(&(boxvar_lit_CommonSubExpression_wrapFunctionCalls__analysis
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_wrapFunctionCalls__analysis)((void*)((char*)(&(boxvar_lit_CommonSubExpression_wrapFunctionCalls__analysis
).header) + 3))
639PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_addConstantCseVarsToGlobalKnownVarHT(threadData_t *threadData, modelica_metatype _cse_crExp, modelica_metatype _D_24in_globalKnownVarHT);
640static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_addConstantCseVarsToGlobalKnownVarHT,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_addConstantCseVarsToGlobalKnownVarHT
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_addConstantCseVarsToGlobalKnownVarHTomc_CommonSubExpression_addConstantCseVarsToGlobalKnownVarHT,0}};
641#define boxvar_CommonSubExpression_addConstantCseVarsToGlobalKnownVarHT((void*)((char*)(&(boxvar_lit_CommonSubExpression_addConstantCseVarsToGlobalKnownVarHT
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_addConstantCseVarsToGlobalKnownVarHT)((void*)((char*)(&(boxvar_lit_CommonSubExpression_addConstantCseVarsToGlobalKnownVarHT
).header) + 3))
642PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_allArgsInGlobalKnownVars(threadData_t *threadData, modelica_metatype _callArgs, modelica_metatype _globalKnownVarHT);
643PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_allArgsInGlobalKnownVars(threadData_t *threadData, modelica_metatype _callArgs, modelica_metatype _globalKnownVarHT);
644static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_allArgsInGlobalKnownVars,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_allArgsInGlobalKnownVars
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_allArgsInGlobalKnownVars,0}};
645#define boxvar_CommonSubExpression_allArgsInGlobalKnownVars((void*)((char*)(&(boxvar_lit_CommonSubExpression_allArgsInGlobalKnownVars
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_allArgsInGlobalKnownVars)((void*)((char*)(&(boxvar_lit_CommonSubExpression_allArgsInGlobalKnownVars
).header) + 3))
646PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_determineDependencies2(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inTuple, modelica_metatype *out_outTuple);
647static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_determineDependencies2,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_determineDependencies2
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_determineDependencies2omc_CommonSubExpression_determineDependencies2,0}};
648#define boxvar_CommonSubExpression_determineDependencies2((void*)((char*)(&(boxvar_lit_CommonSubExpression_determineDependencies2
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_determineDependencies2)((void*)((char*)(&(boxvar_lit_CommonSubExpression_determineDependencies2
).header) + 3))
649PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_determineDependencies(threadData_t *threadData, modelica_metatype _D_24in_exarray, modelica_metatype _HT);
650static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_determineDependencies,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_determineDependencies
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_determineDependenciesomc_CommonSubExpression_determineDependencies,0}};
651#define boxvar_CommonSubExpression_determineDependencies((void*)((char*)(&(boxvar_lit_CommonSubExpression_determineDependencies
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_determineDependencies)((void*)((char*)(&(boxvar_lit_CommonSubExpression_determineDependencies
).header) + 3))
652PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_createCseEquations(threadData_t *threadData, modelica_metatype _exarray, modelica_metatype _D_24in_orderedEqs, modelica_metatype _D_24in_orderedVars, modelica_metatype _D_24in_globalKnownVars, modelica_metatype _D_24in_globalKnownVarHT, modelica_metatype *out_orderedVars, modelica_metatype *out_globalKnownVars, modelica_metatype *out_globalKnownVarHT);
653static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_createCseEquations,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_createCseEquations
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_createCseEquationsomc_CommonSubExpression_createCseEquations,0}};
654#define boxvar_CommonSubExpression_createCseEquations((void*)((char*)(&(boxvar_lit_CommonSubExpression_createCseEquations
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_createCseEquations)((void*)((char*)(&(boxvar_lit_CommonSubExpression_createCseEquations
).header) + 3))
655PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_substituteExp2(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inTuple, modelica_boolean *out_cont, modelica_metatype *out_outTuple);
656PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_substituteExp2(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inTuple, modelica_metatype *out_cont, modelica_metatype *out_outTuple);
657static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_substituteExp2,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_substituteExp2
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_substituteExp2,0}};
658#define boxvar_CommonSubExpression_substituteExp2((void*)((char*)(&(boxvar_lit_CommonSubExpression_substituteExp2
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_substituteExp2)((void*)((char*)(&(boxvar_lit_CommonSubExpression_substituteExp2
).header) + 3))
659PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_substituteExp(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inKey, modelica_metatype _inValue);
660static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_substituteExp,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_substituteExp
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_substituteExpomc_CommonSubExpression_substituteExp,0}};
661#define boxvar_CommonSubExpression_substituteExp((void*)((char*)(&(boxvar_lit_CommonSubExpression_substituteExp
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_substituteExp)((void*)((char*)(&(boxvar_lit_CommonSubExpression_substituteExp
).header) + 3))
662PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_substituteDependencies(threadData_t *threadData, modelica_metatype _inDependencies, modelica_metatype _D_24in_ht, modelica_metatype _D_24in_exarray, modelica_metatype _inCall, modelica_metatype _inCSE, modelica_metatype *out_exarray);
663static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_substituteDependencies,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_substituteDependencies
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_substituteDependenciesomc_CommonSubExpression_substituteDependencies,0}};
664#define boxvar_CommonSubExpression_substituteDependencies((void*)((char*)(&(boxvar_lit_CommonSubExpression_substituteDependencies
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_substituteDependencies)((void*)((char*)(&(boxvar_lit_CommonSubExpression_substituteDependencies
).header) + 3))
665PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_wrapFunctionCalls__substitution3(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inTuple, modelica_metatype *out_outTuple);
666static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_wrapFunctionCalls__substitution3,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_wrapFunctionCalls__substitution3
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_wrapFunctionCalls__substitution3omc_CommonSubExpression_wrapFunctionCalls__substitution3,0}};
667#define boxvar_CommonSubExpression_wrapFunctionCalls__substitution3((void*)((char*)(&(boxvar_lit_CommonSubExpression_wrapFunctionCalls__substitution3
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_wrapFunctionCalls__substitution3)((void*)((char*)(&(boxvar_lit_CommonSubExpression_wrapFunctionCalls__substitution3
).header) + 3))
668PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_wrapFunctionCalls__substitution2(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inTuple, modelica_metatype *out_outTuple);
669static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_wrapFunctionCalls__substitution2,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_wrapFunctionCalls__substitution2
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_wrapFunctionCalls__substitution2omc_CommonSubExpression_wrapFunctionCalls__substitution2,0}};
670#define boxvar_CommonSubExpression_wrapFunctionCalls__substitution2((void*)((char*)(&(boxvar_lit_CommonSubExpression_wrapFunctionCalls__substitution2
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_wrapFunctionCalls__substitution2)((void*)((char*)(&(boxvar_lit_CommonSubExpression_wrapFunctionCalls__substitution2
).header) + 3))
671PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_wrapFunctionCalls__substitution(threadData_t *threadData, modelica_metatype _inEq, modelica_metatype _inTuple, modelica_metatype *out_outTuple);
672static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_wrapFunctionCalls__substitution,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_wrapFunctionCalls__substitution
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_wrapFunctionCalls__substitutionomc_CommonSubExpression_wrapFunctionCalls__substitution,0}};
673#define boxvar_CommonSubExpression_wrapFunctionCalls__substitution((void*)((char*)(&(boxvar_lit_CommonSubExpression_wrapFunctionCalls__substitution
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_wrapFunctionCalls__substitution)((void*)((char*)(&(boxvar_lit_CommonSubExpression_wrapFunctionCalls__substitution
).header) + 3))
674PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_findCallsInGlobalKnownVars(threadData_t *threadData, modelica_metatype _inVar, modelica_metatype _inTuple, modelica_metatype *out_outTuple);
675static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_findCallsInGlobalKnownVars,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_findCallsInGlobalKnownVars
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_findCallsInGlobalKnownVarsomc_CommonSubExpression_findCallsInGlobalKnownVars,0}};
676#define boxvar_CommonSubExpression_findCallsInGlobalKnownVars((void*)((char*)(&(boxvar_lit_CommonSubExpression_findCallsInGlobalKnownVars
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_findCallsInGlobalKnownVars)((void*)((char*)(&(boxvar_lit_CommonSubExpression_findCallsInGlobalKnownVars
).header) + 3))
677PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_VarToGlobalKnownVarHT(threadData_t *threadData, modelica_metatype _inVar, modelica_metatype _inGlobalKnownVarHT, modelica_metatype *out_outGlobalKnownVarHT);
678static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_VarToGlobalKnownVarHT,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_VarToGlobalKnownVarHT
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_VarToGlobalKnownVarHTomc_CommonSubExpression_VarToGlobalKnownVarHT,0}};
679#define boxvar_CommonSubExpression_VarToGlobalKnownVarHT((void*)((char*)(&(boxvar_lit_CommonSubExpression_VarToGlobalKnownVarHT
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_VarToGlobalKnownVarHT)((void*)((char*)(&(boxvar_lit_CommonSubExpression_VarToGlobalKnownVarHT
).header) + 3))
680PROTECTED_FUNCTION_STATIC modelica_string omc_CommonSubExpression_printCSEEquation(threadData_t *threadData, modelica_metatype _cseEquation);
681static const MMC_DEFSTRUCTLIT(boxvar_lit_CommonSubExpression_printCSEEquation,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_CommonSubExpression_printCSEEquation
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_CommonSubExpression_printCSEEquationomc_CommonSubExpression_printCSEEquation,0}};
682#define boxvar_CommonSubExpression_printCSEEquation((void*)((char*)(&(boxvar_lit_CommonSubExpression_printCSEEquation
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_CommonSubExpression_printCSEEquation)((void*)((char*)(&(boxvar_lit_CommonSubExpression_printCSEEquation
).header) + 3))
683
684PROTECTED_FUNCTION_STATIC modelica_string omc_CommonSubExpression_printCSE(threadData_t *threadData, modelica_metatype _cse)
685{
686 modelica_string _s = NULL((void*)0);
687 modelica_string tmp1 = 0;
688 modelica_metatype tmpMeta[8] __attribute__((unused)) = {0};
689 MMC_SO()mmc_check_stackoverflow(threadData);
690 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
691 // _s has no default value.
692#line 692 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
693 { /* match expression */
694 modelica_metatype tmp4_1;
695 tmp4_1 = _cse;
696 {
697 modelica_integer _sharedVar;
698 modelica_metatype _eqIdcs = NULL((void*)0);
699 modelica_metatype _sharedVars = NULL((void*)0);
700 modelica_metatype _aliasVars = NULL((void*)0);
701 volatile mmc_switch_type tmp4;
702 int tmp5;
703 // _sharedVar has no default value.
704 // _eqIdcs has no default value.
705 // _sharedVars has no default value.
706 // _aliasVars has no default value.
707 tmp4 = 0;
708 for (; tmp4 < 2; tmp4++) {
709 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
710 case 0: {
711 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,3)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((3 +1) <<
10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
712 tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
713 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
714 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(4)))))
;
715 _eqIdcs = tmpMeta[0];
716 _sharedVars = tmpMeta[1];
717 _aliasVars = tmpMeta[2];
718 /* Pattern matching succeeded */
719#line 2463 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
720 tmpMeta[0] = stringAppend(_OMC_LIT0((void*)((char*)(&(_OMC_LIT_STRUCT0).header) + 3)),stringDelimitList(omc_List_map(threadData, _eqIdcs, boxvar_intString((void*)((char*)(&(boxvar_lit_intString).header) + 3))), _OMC_LIT1((void*)((char*)(&(_OMC_LIT_STRUCT1).header) + 3))));
721#line 2463 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
722 tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT2((void*)((char*)(&(_OMC_LIT_STRUCT2).header) + 3)));
723#line 2463 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
724 tmpMeta[2] = stringAppend(tmpMeta[1],_OMC_LIT3((void*)((char*)(&(_OMC_LIT_STRUCT3).header) + 3)));
725#line 2463 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
726 tmpMeta[3] = stringAppend(tmpMeta[2],stringDelimitList(omc_List_map(threadData, _sharedVars, boxvar_intString((void*)((char*)(&(boxvar_lit_intString).header) + 3))), _OMC_LIT1((void*)((char*)(&(_OMC_LIT_STRUCT1).header) + 3))));
727#line 2463 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
728 tmpMeta[4] = stringAppend(tmpMeta[3],_OMC_LIT2((void*)((char*)(&(_OMC_LIT_STRUCT2).header) + 3)));
729#line 2463 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
730 tmpMeta[5] = stringAppend(tmpMeta[4],_OMC_LIT4((void*)((char*)(&(_OMC_LIT_STRUCT4).header) + 3)));
731#line 2463 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
732 tmpMeta[6] = stringAppend(tmpMeta[5],stringDelimitList(omc_List_map(threadData, _aliasVars, boxvar_intString((void*)((char*)(&(boxvar_lit_intString).header) + 3))), _OMC_LIT1((void*)((char*)(&(_OMC_LIT_STRUCT1).header) + 3))));
733#line 2463 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
734 tmpMeta[7] = stringAppend(tmpMeta[6],_OMC_LIT2((void*)((char*)(&(_OMC_LIT_STRUCT2).header) + 3)));
735#line 2463 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
736 tmp1 = tmpMeta[7];
737#line 737 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
738 goto tmp3_done;
739 }
740 case 1: {
741 modelica_integer tmp6;
742 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,1,2)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((2 +1) <<
10) + (((1 +3) & 255) << 2)))
== 0) goto tmp3_end;
743 tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
744 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
745 tmp6 = mmc_unbox_integer(tmpMeta[1])(((mmc_sint_t) (tmpMeta[1])) >> 1);
746 _eqIdcs = tmpMeta[0];
747 _sharedVar = tmp6 /* pattern as ty=Integer */;
748 /* Pattern matching succeeded */
749#line 2465 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
750 tmpMeta[0] = stringAppend(_OMC_LIT5((void*)((char*)(&(_OMC_LIT_STRUCT5).header) + 3)),stringDelimitList(omc_List_map(threadData, _eqIdcs, boxvar_intString((void*)((char*)(&(boxvar_lit_intString).header) + 3))), _OMC_LIT1((void*)((char*)(&(_OMC_LIT_STRUCT1).header) + 3))));
751#line 2465 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
752 tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT2((void*)((char*)(&(_OMC_LIT_STRUCT2).header) + 3)));
753#line 2465 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
754 tmpMeta[2] = stringAppend(tmpMeta[1],_OMC_LIT6((void*)((char*)(&(_OMC_LIT_STRUCT6).header) + 3)));
755#line 2465 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
756 tmpMeta[3] = stringAppend(tmpMeta[2],intString(_sharedVar));
757#line 2465 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
758 tmpMeta[4] = stringAppend(tmpMeta[3],_OMC_LIT2((void*)((char*)(&(_OMC_LIT_STRUCT2).header) + 3)));
759#line 2465 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
760 tmp1 = tmpMeta[4];
761#line 761 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
762 goto tmp3_done;
763 }
764 }
765 goto tmp3_end;
766 tmp3_end: ;
767 }
768 goto goto_2;
769 goto_2:;
770 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
771 goto tmp3_done;
772 tmp3_done:;
773 }
774 }
775 _s = tmp1;
776 _return: OMC_LABEL_UNUSED__attribute__((unused))
777 return _s;
778}
779
780PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_getTopLevelFactors(threadData_t *threadData, modelica_metatype _exp, modelica_metatype _lstIn)
781{
782 modelica_metatype _lstOut = NULL((void*)0);
783 modelica_metatype tmpMeta[4] __attribute__((unused)) = {0};
784 MMC_SO()mmc_check_stackoverflow(threadData);
785 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
786 // _lstOut has no default value.
787#line 787 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
788 { /* matchcontinue expression */
789 volatile modelica_metatype tmp3_1;
790 tmp3_1 = _exp;
791 {
792 modelica_metatype _e1 = NULL((void*)0);
793 modelica_metatype _e2 = NULL((void*)0);
794 modelica_metatype _eLst = NULL((void*)0);
795 volatile mmc_switch_type tmp3;
796 int tmp4;
797 // _e1 has no default value.
798 // _e2 has no default value.
799 // _eLst has no default value.
800 tmp3 = 0;
801 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
802 tmp2_top:
803 threadData->mmc_jumper = &new_mmc_jumper;
804 for (; tmp3 < 4; tmp3++) {
805 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
806 case 0: {
807 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,7,3)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((3 +1) <<
10) + (((7 +3) & 255) << 2)))
== 0) goto tmp2_end;
808 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
809 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(3)))))
;
810 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],2,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))==(((1 +1)
<< 10) + (((2 +3) & 255) << 2)))
== 0) goto tmp2_end;
811 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(4)))))
;
812 _e1 = tmpMeta[1];
813 _e2 = tmpMeta[3];
814 tmp3 += 2; /* Pattern matching succeeded; we may skip some cases if we fail */
815#line 2437 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
816 _eLst = omc_CommonSubExpression_getTopLevelFactors(threadData, _e1, _lstIn);
817#line 817 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
818#line 2438 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
819 tmpMeta[0] = omc_CommonSubExpression_getTopLevelFactors(threadData, _e2, _eLst);
820#line 820 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
821 goto tmp2_done;
822 }
823 case 1: {
824 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,8,2)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((2 +1) <<
10) + (((8 +3) & 255) << 2)))
== 0) goto tmp2_end;
825 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(3)))))
;
826 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],6,2)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((2 +1)
<< 10) + (((6 +3) & 255) << 2)))
== 0) goto tmp2_end;
827
828 _e1 = tmpMeta[1];
829 tmp3 += 1; /* Pattern matching succeeded; we may skip some cases if we fail */
830#line 2442 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
831 tmpMeta[1] = mmc_mk_cons(_e1, _lstIn);
832#line 2442 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
833 tmpMeta[0] = tmpMeta[1];
834#line 834 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
835 goto tmp2_done;
836 }
837 case 2: {
838 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,6,2)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((2 +1) <<
10) + (((6 +3) & 255) << 2)))
== 0) goto tmp2_end;
839
840 _e1 = tmp3_1;
841 /* Pattern matching succeeded */
842#line 2445 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
843 tmpMeta[1] = mmc_mk_cons(_e1, _lstIn);
844#line 2445 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
845 tmpMeta[0] = tmpMeta[1];
846#line 846 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
847 goto tmp2_done;
848 }
849 case 3: {
850
851 /* Pattern matching succeeded */
852#line 2447 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
853 tmpMeta[0] = _lstIn;
854#line 854 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
855 goto tmp2_done;
856 }
857 }
858 goto tmp2_end;
859 tmp2_end: ;
860 }
861 goto goto_1;
862 tmp2_done:
863 (void)tmp3;
864 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
865 goto tmp2_done2;
866 goto_1:;
867 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
868 if (++tmp3 < 4) {
869 goto tmp2_top;
870 }
871 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
872 tmp2_done2:;
873 }
874 }
875 _lstOut = tmpMeta[0];
876 _return: OMC_LABEL_UNUSED__attribute__((unused))
877 return _lstOut;
878}
879
880PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_cancelExpressions(threadData_t *threadData, modelica_metatype _e1In, modelica_metatype _e2In, modelica_metatype *out_e1Out, modelica_metatype *out_e2Out)
881{
882 modelica_boolean _canceled;
883 modelica_metatype _e1Out = NULL((void*)0);
884 modelica_metatype _e2Out = NULL((void*)0);
885 modelica_metatype _topLevelFactors1 = NULL((void*)0);
886 modelica_metatype _topLevelFactors2 = NULL((void*)0);
887 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
888 MMC_SO()mmc_check_stackoverflow(threadData);
889 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
890 _canceled = 0;
891 _e1Out = _e1In;
892 _e2Out = _e2In;
893 // _topLevelFactors1 has no default value.
894 // _topLevelFactors2 has no default value.
895#line 2408 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
896 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
897#line 2408 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
898 _topLevelFactors1 = omc_CommonSubExpression_getTopLevelFactors(threadData, _e1In, tmpMeta[0]);
899#line 899 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
900
901#line 2410 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
902 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
903#line 2410 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
904 _topLevelFactors2 = omc_CommonSubExpression_getTopLevelFactors(threadData, _e2In, tmpMeta[0]);
905#line 905 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
906
907#line 2412 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
908 if((!listEmpty(_topLevelFactors1)((*(mmc_uint_t*)((void*)((char*)(_topLevelFactors1) - 3))) ==
(((0) << 10) + (((0) & 255) << 2)))
))
909#line 2412 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
910 {
911#line 2413 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
912 _topLevelFactors1 = omc_List_intersectionOnTrue(threadData, _topLevelFactors1, _topLevelFactors2, boxvar_Expression_expEqual((void*)((char*)(&(boxvar_lit_Expression_expEqual).header
) + 3))
);
913#line 913 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
914
915#line 2414 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
916 if((listLength(_topLevelFactors1) == ((modelica_integer) 1)))
917#line 2414 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
918 {
919#line 2415 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
920 _e1Out = omc_Expression_expDiv(threadData, _e1In, listHead(_topLevelFactors1)boxptr_listHead(threadData,_topLevelFactors1));
921#line 921 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
922
923#line 2416 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
924 _e1Out = omc_ExpressionSimplify_simplify(threadData, _e1Out, NULL((void*)0));
925#line 925 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
926
927#line 2417 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
928 _e2Out = omc_Expression_expDiv(threadData, _e2In, listHead(_topLevelFactors2)boxptr_listHead(threadData,_topLevelFactors2));
929#line 929 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
930
931#line 2418 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
932 _e2Out = omc_ExpressionSimplify_simplify(threadData, _e2Out, NULL((void*)0));
933#line 933 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
934
935#line 2421 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
936 _canceled = 1;
937#line 937 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
938 }
939 }
940 _return: OMC_LABEL_UNUSED__attribute__((unused))
941 if (out_e1Out) { *out_e1Out = _e1Out; }
942 if (out_e2Out) { *out_e2Out = _e2Out; }
943 return _canceled;
944}
945PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_cancelExpressions(threadData_t *threadData, modelica_metatype _e1In, modelica_metatype _e2In, modelica_metatype *out_e1Out, modelica_metatype *out_e2Out)
946{
947 modelica_boolean _canceled;
948 modelica_metatype out_canceled;
949 _canceled = omc_CommonSubExpression_cancelExpressions(threadData, _e1In, _e2In, out_e1Out, out_e2Out);
950 out_canceled = mmc_mk_icon(_canceled);
951 /* skip box _e1Out; DAE.Exp */
952 /* skip box _e2Out; DAE.Exp */
953 return out_canceled;
954}
955
956PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_hasAlgebraicOperationsOnly(threadData_t *threadData, modelica_metatype _exp)
957{
958 modelica_boolean _isAlgOut;
959 modelica_boolean tmp1 = 0;
960 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
961 MMC_SO()mmc_check_stackoverflow(threadData);
962 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
963 // _isAlgOut has no default value.
964#line 964 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
965 { /* match expression */
966 modelica_metatype tmp4_1;
967 tmp4_1 = _exp;
968 {
969 modelica_boolean _b;
970 modelica_metatype _e1 = NULL((void*)0);
971 modelica_metatype _e2 = NULL((void*)0);
972 int tmp4;
973 // _b has no default value.
974 // _e1 has no default value.
975 // _e2 has no default value.
976 {
977 switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))) >> 2
) & 255))
) {
978 case 4: {
979
980 /* Pattern matching succeeded */
981#line 2380 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
982 tmp1 = 1;
983#line 983 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
984 goto tmp3_done;
985 }
986 case 9: {
987
988 /* Pattern matching succeeded */
989#line 2382 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
990 tmp1 = 1;
991#line 991 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
992 goto tmp3_done;
993 }
994 case 10: {
995 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,7,3)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((3 +1) <<
10) + (((7 +3) & 255) << 2)))
== 0) goto tmp3_end;
996 tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
997 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(4)))))
;
998 _e1 = tmpMeta[0];
999 _e2 = tmpMeta[1];
1000 /* Pattern matching succeeded */
1001#line 2385 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1002 _b = omc_CommonSubExpression_hasAlgebraicOperationsOnly(threadData, _e1);
1003#line 1003 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1004#line 2386 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1005 tmp1 = (_b && omc_CommonSubExpression_hasAlgebraicOperationsOnly(threadData, _e2));
1006#line 1006 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1007 goto tmp3_done;
1008 }
1009 case 11: {
1010 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,8,2)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((2 +1) <<
10) + (((8 +3) & 255) << 2)))
== 0) goto tmp3_end;
1011 tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
1012 _e1 = tmpMeta[0];
1013 /* Pattern matching succeeded */
1014#line 2390 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1015 /* Tail recursive call */
1016#line 2390 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1017 _exp = _e1;
1018#line 2390 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1019 goto _tailrecursive;
1020#line 2390 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1021 /* TODO: Make sure any eventual dead code below is never generated */
1022#line 1022 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1023 goto tmp3_done;
1024 }
1025 default:
1026 tmp3_default: OMC_LABEL_UNUSED__attribute__((unused)); {
1027
1028 /* Pattern matching succeeded */
1029#line 2393 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1030 tmp1 = 0;
1031#line 1031 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1032 goto tmp3_done;
1033 }
1034 }
1035 goto tmp3_end;
1036 tmp3_end: ;
1037 }
1038 goto goto_2;
1039 goto_2:;
1040 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1041 goto tmp3_done;
1042 tmp3_done:;
1043 }
1044 }
1045 _isAlgOut = tmp1;
1046 _return: OMC_LABEL_UNUSED__attribute__((unused))
1047 return _isAlgOut;
1048}
1049PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_hasAlgebraicOperationsOnly(threadData_t *threadData, modelica_metatype _exp)
1050{
1051 modelica_boolean _isAlgOut;
1052 modelica_metatype out_isAlgOut;
1053 _isAlgOut = omc_CommonSubExpression_hasAlgebraicOperationsOnly(threadData, _exp);
1054 out_isAlgOut = mmc_mk_icon(_isAlgOut);
1055 return out_isAlgOut;
1056}
1057
1058PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_commonSubExpressionUpdate(threadData_t *threadData, modelica_metatype _tplsIn, modelica_metatype _m, modelica_metatype _mT, modelica_metatype _sysIn)
1059{
1060 modelica_metatype _sysOut = NULL((void*)0);
1061 modelica_metatype tmpMeta[15] __attribute__((unused)) = {0};
1062 MMC_SO()mmc_check_stackoverflow(threadData);
1063 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1064 // _sysOut has no default value.
1065#line 1065 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1066 { /* matchcontinue expression */
1067 volatile modelica_metatype tmp3_1;volatile modelica_metatype tmp3_2;
1068 tmp3_1 = _tplsIn;
1069 tmp3_2 = _sysIn;
1070 {
1071 modelica_integer _sharedVar;
1072 modelica_integer _eqIdx1;
1073 modelica_integer _eqIdx2;
1074 modelica_integer _varIdx1;
1075 modelica_integer _varIdx2;
1076 modelica_integer _varIdx_remain;
1077 modelica_integer _varIdxAlias;
1078 modelica_integer _eqIdxDel;
1079 modelica_integer _n;
1080 modelica_metatype _eqIdcs = NULL((void*)0);
1081 modelica_metatype _eqs1 = NULL((void*)0);
1082 modelica_metatype _eqs2 = NULL((void*)0);
1083 modelica_metatype _rest = NULL((void*)0);
1084 modelica_metatype _var1 = NULL((void*)0);
1085 modelica_metatype _var2 = NULL((void*)0);
1086 modelica_metatype _var_remain = NULL((void*)0);
1087 modelica_metatype _var_alias = NULL((void*)0);
1088 modelica_metatype _repl = NULL((void*)0);
1089 modelica_metatype _vars = NULL((void*)0);
1090 modelica_metatype _var = NULL((void*)0);
1091 modelica_metatype _eq1 = NULL((void*)0);
1092 modelica_metatype _eq2 = NULL((void*)0);
1093 modelica_metatype _eqNew = NULL((void*)0);
1094 modelica_metatype _eqs = NULL((void*)0);
1095 modelica_metatype _syst = NULL((void*)0);
1096 modelica_metatype _varExp_remain = NULL((void*)0);
1097 modelica_metatype _varExp_alias = NULL((void*)0);
1098 modelica_metatype _lhs1 = NULL((void*)0);
1099 modelica_metatype _rhs1 = NULL((void*)0);
1100 modelica_metatype _lhs2 = NULL((void*)0);
1101 modelica_metatype _rhs2 = NULL((void*)0);
1102 modelica_metatype _varExp = NULL((void*)0);
1103 modelica_metatype _cref = NULL((void*)0);
1104 modelica_metatype _eqLst = NULL((void*)0);
1105 volatile mmc_switch_type tmp3;
1106 int tmp4;
1107 // _sharedVar has no default value.
1108 // _eqIdx1 has no default value.
1109 // _eqIdx2 has no default value.
1110 // _varIdx1 has no default value.
1111 // _varIdx2 has no default value.
1112 // _varIdx_remain has no default value.
1113 // _varIdxAlias has no default value.
1114 // _eqIdxDel has no default value.
1115 // _n has no default value.
1116 // _eqIdcs has no default value.
1117 // _eqs1 has no default value.
1118 // _eqs2 has no default value.
1119 // _rest has no default value.
1120 // _var1 has no default value.
1121 // _var2 has no default value.
1122 // _var_remain has no default value.
1123 // _var_alias has no default value.
1124 // _repl has no default value.
1125 // _vars has no default value.
1126 // _var has no default value.
1127 // _eq1 has no default value.
1128 // _eq2 has no default value.
1129 // _eqNew has no default value.
1130 // _eqs has no default value.
1131 // _syst has no default value.
1132 // _varExp_remain has no default value.
1133 // _varExp_alias has no default value.
1134 // _lhs1 has no default value.
1135 // _rhs1 has no default value.
1136 // _lhs2 has no default value.
1137 // _rhs2 has no default value.
1138 // _varExp has no default value.
1139 // _cref has no default value.
1140 // _eqLst has no default value.
1141 tmp3 = 0;
1142 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
1143 tmp2_top:
1144 threadData->mmc_jumper = &new_mmc_jumper;
1145 for (; tmp3 < 4; tmp3++) {
1146 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
1147 case 0: {
1148 if (!listEmpty(tmp3_1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp2_end;
1149
1150 _syst = tmp3_2;
1151 tmp3 += 3; /* Pattern matching succeeded; we may skip some cases if we fail */
1152#line 2289 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1153 tmpMeta[0] = omc_BackendDAEUtil_clearEqSyst(threadData, _syst);
1154#line 1154 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1155 goto tmp2_done;
1156 }
1157 case 1: {
1158 modelica_integer tmp5;
1159 modelica_integer tmp6;
1160 modelica_integer tmp7;
1161 modelica_integer tmp8;
1162 if (listEmpty(tmp3_1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp2_end;
1163 tmpMeta[1] = MMC_CAR(tmp3_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(1)))))
;
1164 tmpMeta[2] = MMC_CDR(tmp3_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
1165 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],0,3)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((3 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp2_end;
1166 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
;
1167 if (listEmpty(tmpMeta[3])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp2_end;
1168 tmpMeta[4] = MMC_CAR(tmpMeta[3])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (1)))))
;
1169 tmpMeta[5] = MMC_CDR(tmpMeta[3])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (2)))))
;
1170 tmp5 = mmc_unbox_integer(tmpMeta[4])(((mmc_sint_t) (tmpMeta[4])) >> 1);
1171 if (listEmpty(tmpMeta[5])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[5]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp2_end;
1172 tmpMeta[6] = MMC_CAR(tmpMeta[5])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[5]) - 3
))) + (1)))))
;
1173 tmpMeta[7] = MMC_CDR(tmpMeta[5])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[5]) - 3
))) + (2)))))
;
1174 tmp6 = mmc_unbox_integer(tmpMeta[6])(((mmc_sint_t) (tmpMeta[6])) >> 1);
1175 if (!listEmpty(tmpMeta[7])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[7]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp2_end;
1176 tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (4)))))
;
1177 if (listEmpty(tmpMeta[8])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[8]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp2_end;
1178 tmpMeta[9] = MMC_CAR(tmpMeta[8])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[8]) - 3
))) + (1)))))
;
1179 tmpMeta[10] = MMC_CDR(tmpMeta[8])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[8]) - 3
))) + (2)))))
;
1180 tmp7 = mmc_unbox_integer(tmpMeta[9])(((mmc_sint_t) (tmpMeta[9])) >> 1);
1181 if (listEmpty(tmpMeta[10])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[10]) - 3))) == (((0)
<< 10) + (((0) & 255) << 2)))
) goto tmp2_end;
1182 tmpMeta[11] = MMC_CAR(tmpMeta[10])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[10]) - 3
))) + (1)))))
;
1183 tmpMeta[12] = MMC_CDR(tmpMeta[10])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[10]) - 3
))) + (2)))))
;
1184 tmp8 = mmc_unbox_integer(tmpMeta[11])(((mmc_sint_t) (tmpMeta[11])) >> 1);
1185 if (!listEmpty(tmpMeta[12])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[12]) - 3))) == (((0)
<< 10) + (((0) & 255) << 2)))
) goto tmp2_end;
1186 tmpMeta[13] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_2), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_2) - 3))) +
(2)))))
;
1187 tmpMeta[14] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_2), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_2) - 3))) +
(3)))))
;
1188
1189 _eqIdx1 = tmp5 /* pattern as ty=Integer */;
1190 _eqIdx2 = tmp6 /* pattern as ty=Integer */;
1191 _varIdx1 = tmp7 /* pattern as ty=Integer */;
1192 _varIdx2 = tmp8 /* pattern as ty=Integer */;
1193 _rest = tmpMeta[2];
1194 _syst = tmp3_2;
1195 _vars = tmpMeta[13];
1196 _eqs = tmpMeta[14];
1197 tmp3 += 1; /* Pattern matching succeeded; we may skip some cases if we fail */
1198#line 2295 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1199 _repl = omc_BackendVarTransform_emptyReplacements(threadData);
1200#line 1200 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1201
1202#line 2296 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1203 _eqs1 = arrayGet(_mT, _varIdx1)nobox_arrayGet(threadData,_mT,_varIdx1);
1204#line 1204 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1205
1206#line 2297 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1207 _eqs2 = arrayGet(_mT, _varIdx2)nobox_arrayGet(threadData,_mT,_varIdx2);
1208#line 1208 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1209
1210#line 2301 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1211 _var1 = omc_BackendVariable_getVarAt(threadData, _vars, _varIdx1);
1212#line 1212 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1213
1214#line 2302 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1215 _var2 = omc_BackendVariable_getVarAt(threadData, _vars, _varIdx2);
1216#line 1216 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1217
1218#line 2305 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1219 if(omc_BackendVariable_isStateVar(threadData, _var1))
1220#line 2305 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1221 {
1222#line 2305 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1223 _varIdxAlias = _varIdx2;
1224#line 1224 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1225
1226#line 2305 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1227 _varIdx_remain = _varIdx1;
1228#line 1228 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1229 }
1230 else
1231 {
1232 if(omc_BackendVariable_isStateVar(threadData, _var2))
1233 {
1234#line 2306 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1235 _varIdx_remain = _varIdx2;
1236#line 1236 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1237
1238#line 2306 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1239 _varIdxAlias = _varIdx1;
1240#line 1240 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1241 }
1242 else
1243 {
1244#line 2308 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1245 if((listLength(_eqs2) <= listLength(_eqs1)))
1246#line 2308 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1247 {
1248#line 2308 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1249 _varIdxAlias = _varIdx2;
1250#line 1250 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1251
1252#line 2308 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1253 _varIdx_remain = _varIdx1;
1254#line 1254 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1255 }
1256 else
1257 {
1258#line 2308 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1259 _varIdxAlias = _varIdx1;
1260#line 1260 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1261
1262#line 2308 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1263 _varIdx_remain = _varIdx2;
1264#line 1264 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1265 }
1266 }
1267 }
1268
1269#line 2311 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1270 if((listLength(_eqs2) <= listLength(_eqs1)))
1271#line 2311 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1272 {
1273#line 2311 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1274 _eqIdxDel = _eqIdx2;
1275#line 1275 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1276 }
1277 else
1278 {
1279#line 2311 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1280 _eqIdxDel = _eqIdx1;
1281#line 1281 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1282 }
1283
1284#line 2313 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1285 _var_remain = omc_BackendVariable_getVarAt(threadData, _vars, _varIdx_remain);
1286#line 1286 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1287
1288#line 2314 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1289 _var_alias = omc_BackendVariable_getVarAt(threadData, _vars, _varIdxAlias);
1290#line 1290 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1291
1292#line 2315 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1293 _cref = omc_BackendVariable_varCref(threadData, _var_alias);
1294#line 1294 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1295
1296#line 2316 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1297 _varExp_remain = omc_BackendVariable_varExp(threadData, _var_remain);
1298#line 1298 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1299
1300#line 2317 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1301 _varExp_alias = omc_BackendVariable_varExp(threadData, _var_alias);
1302#line 1302 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1303
1304#line 2318 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1305 _repl = omc_BackendVarTransform_addReplacement(threadData, _repl, _cref, _varExp_remain, mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)));
1306#line 1306 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1307
1308#line 2322 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1309 _eqIdcs = arrayGet(_mT, _varIdxAlias)nobox_arrayGet(threadData,_mT,_varIdxAlias);
1310#line 1310 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1311
1312#line 2323 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1313 _eqLst = omc_BackendEquation_getList(threadData, _eqIdcs, _eqs);
1314#line 1314 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1315
1316#line 2325 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1317 _eqs = omc_List_threadFold(threadData, _eqIdcs, _eqLst, boxvar_BackendEquation_setAtIndexFirst((void*)((char*)(&(boxvar_lit_BackendEquation_setAtIndexFirst
).header) + 3))
, _eqs);
1318#line 1318 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1319
1320#line 2328 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1321 tmpMeta[1] = mmc_mk_box5(3, &BackendDAE_Equation_EQUATION__desc, _varExp_remain, _varExp_alias, _OMC_LIT11((void*)((char*)(&(_OMC_LIT_STRUCT11).header) + 3)), _OMC_LIT14((void*)((char*)(&(_OMC_LIT_STRUCT14).header) + 3)));
1322#line 2328 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1323 omc_BackendEquation_setAtIndex(threadData, _eqs, _eqIdxDel, tmpMeta[1]);
1324#line 1324 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1325#line 2329 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1326 tmpMeta[0] = omc_CommonSubExpression_commonSubExpressionUpdate(threadData, _rest, _m, _mT, _syst);
1327#line 1327 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1328 goto tmp2_done;
1329 }
1330 case 2: {
1331 modelica_integer tmp9;
1332 modelica_integer tmp10;
1333 modelica_integer tmp11;
1334 modelica_boolean tmp12;
1335 modelica_boolean tmp13;
1336 modelica_boolean tmp14;
1337 modelica_boolean tmp15;
1338 if (listEmpty(tmp3_1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp2_end;
1339 tmpMeta[1] = MMC_CAR(tmp3_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(1)))))
;
1340 tmpMeta[2] = MMC_CDR(tmp3_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
1341 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],1,2)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((2 +1)
<< 10) + (((1 +3) & 255) << 2)))
== 0) goto tmp2_end;
1342 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
;
1343 if (listEmpty(tmpMeta[3])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp2_end;
1344 tmpMeta[4] = MMC_CAR(tmpMeta[3])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (1)))))
;
1345 tmpMeta[5] = MMC_CDR(tmpMeta[3])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (2)))))
;
1346 tmp9 = mmc_unbox_integer(tmpMeta[4])(((mmc_sint_t) (tmpMeta[4])) >> 1);
1347 if (listEmpty(tmpMeta[5])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[5]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp2_end;
1348 tmpMeta[6] = MMC_CAR(tmpMeta[5])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[5]) - 3
))) + (1)))))
;
1349 tmpMeta[7] = MMC_CDR(tmpMeta[5])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[5]) - 3
))) + (2)))))
;
1350 tmp10 = mmc_unbox_integer(tmpMeta[6])(((mmc_sint_t) (tmpMeta[6])) >> 1);
1351 if (!listEmpty(tmpMeta[7])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[7]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp2_end;
1352 tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (3)))))
;
1353 tmp11 = mmc_unbox_integer(tmpMeta[8])(((mmc_sint_t) (tmpMeta[8])) >> 1);
1354 tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_2), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_2) - 3))) +
(2)))))
;
1355 tmpMeta[10] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_2), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_2) - 3))) +
(3)))))
;
1356
1357 _eqIdx1 = tmp9 /* pattern as ty=Integer */;
1358 _eqIdx2 = tmp10 /* pattern as ty=Integer */;
1359 _sharedVar = tmp11 /* pattern as ty=Integer */;
1360 _rest = tmpMeta[2];
1361 _syst = tmp3_2;
1362 _vars = tmpMeta[9];
1363 _eqs = tmpMeta[10];
1364 /* Pattern matching succeeded */
1365#line 2333 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1366 /* Pattern-matching assignment */
1367#line 2333 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1368 tmpMeta[1] = mmc_mk_cons(mmc_mk_integermmc_mk_icon(_eqIdx1), mmc_mk_cons(mmc_mk_integermmc_mk_icon(_eqIdx2), MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))));
1369#line 2333 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1370 tmpMeta[2] = omc_BackendEquation_getList(threadData, tmpMeta[1], _eqs);
1371#line 2333 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1372 if (listEmpty(tmpMeta[2])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
1373#line 2333 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1374 tmpMeta[3] = MMC_CAR(tmpMeta[2])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (1)))))
;
1375#line 2333 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1376 tmpMeta[4] = MMC_CDR(tmpMeta[2])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
1377#line 2333 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1378 if (listEmpty(tmpMeta[4])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
1379#line 2333 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1380 tmpMeta[5] = MMC_CAR(tmpMeta[4])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (1)))))
;
1381#line 2333 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1382 tmpMeta[6] = MMC_CDR(tmpMeta[4])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (2)))))
;
1383#line 2333 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1384 if (!listEmpty(tmpMeta[6])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[6]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
1385#line 2333 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1386 _eq1 = tmpMeta[3];
1387#line 2333 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1388 _eq2 = tmpMeta[5];
1389#line 1389 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1390
1391#line 2334 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1392 _var = omc_BackendVariable_getVarAt(threadData, _vars, _sharedVar);
1393#line 1393 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1394
1395#line 2335 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1396 _varExp = omc_BackendVariable_varExp(threadData, _var);
1397#line 1397 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1398
1399#line 2336 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1400 omc_Expression_typeof(threadData, _varExp);
1401#line 1401 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1402
1403#line 2337 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1404 /* Pattern-matching assignment */
1405#line 2337 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1406 tmpMeta[1] = _eq1;
1407#line 2337 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1408 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],0,4)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((4 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto goto_1;
1409#line 2337 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1410 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
;
1411#line 2337 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1412 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (3)))))
;
1413#line 2337 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1414 _lhs1 = tmpMeta[2];
1415#line 2337 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1416 _rhs1 = tmpMeta[3];
1417#line 1417 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1418
1419#line 2338 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1420 /* Pattern-matching assignment */
1421#line 2338 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1422 tmpMeta[1] = _eq2;
1423#line 2338 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1424 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],0,4)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((4 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto goto_1;
1425#line 2338 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1426 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
;
1427#line 2338 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1428 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (3)))))
;
1429#line 2338 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1430 _lhs2 = tmpMeta[2];
1431#line 2338 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1432 _rhs2 = tmpMeta[3];
1433#line 1433 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1434
1435#line 2341 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1436 /* Pattern-matching assignment */
1437#line 2341 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1438 tmp12 = omc_CommonSubExpression_hasAlgebraicOperationsOnly(threadData, _lhs1);
1439#line 2341 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1440 if (1 != tmp12) goto goto_1;
1441#line 1441 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1442
1443#line 2342 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1444 /* Pattern-matching assignment */
1445#line 2342 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1446 tmp13 = omc_CommonSubExpression_hasAlgebraicOperationsOnly(threadData, _rhs1);
1447#line 2342 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1448 if (1 != tmp13) goto goto_1;
1449#line 1449 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1450
1451#line 2343 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1452 /* Pattern-matching assignment */
1453#line 2343 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1454 tmp14 = omc_CommonSubExpression_hasAlgebraicOperationsOnly(threadData, _lhs2);
1455#line 2343 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1456 if (1 != tmp14) goto goto_1;
1457#line 1457 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1458
1459#line 2344 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1460 /* Pattern-matching assignment */
1461#line 2344 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1462 tmp15 = omc_CommonSubExpression_hasAlgebraicOperationsOnly(threadData, _rhs2);
1463#line 2344 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1464 if (1 != tmp15) goto goto_1;
1465#line 1465 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1466
1467#line 2346 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1468 _rhs1 = omc_ExpressionSolve_solve(threadData, _lhs1, _rhs1, _varExp, mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), NULL((void*)0));
1469#line 1469 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1470
1471#line 2347 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1472 _lhs1 = omc_ExpressionSolve_solve(threadData, _lhs2, _rhs2, _varExp, mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), NULL((void*)0));
1473#line 1473 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1474
1475#line 2349 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1476 omc_CommonSubExpression_cancelExpressions(threadData, _lhs1, _rhs1 ,&_lhs1 ,&_rhs1);
1477#line 1477 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1478
1479#line 2350 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1480 _n = listLength(omc_Expression_getAllCrefs(threadData, omc_Expression_makeDiff(threadData, _lhs1, _rhs1)));
1481#line 1481 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1482
1483#line 2354 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1484 if((_n <= ((modelica_integer) 2)))
1485#line 2354 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1486 {
1487#line 2357 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1488 tmpMeta[1] = mmc_mk_box5(3, &BackendDAE_Equation_EQUATION__desc, _lhs1, _rhs1, _OMC_LIT11((void*)((char*)(&(_OMC_LIT_STRUCT11).header) + 3)), _OMC_LIT14((void*)((char*)(&(_OMC_LIT_STRUCT14).header) + 3)));
1489#line 2357 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1490 _eqNew = tmpMeta[1];
1491#line 1491 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1492
1493#line 2360 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1494 omc_BackendEquation_setAtIndex(threadData, _eqs, _eqIdx1, _eqNew);
1495#line 1495 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1496 }
1497#line 2363 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1498 tmpMeta[0] = omc_CommonSubExpression_commonSubExpressionUpdate(threadData, _rest, _m, _mT, _syst);
1499#line 1499 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1500 goto tmp2_done;
1501 }
1502 case 3: {
1503 if (listEmpty(tmp3_1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp2_end;
1504 tmpMeta[1] = MMC_CAR(tmp3_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(1)))))
;
1505 tmpMeta[2] = MMC_CDR(tmp3_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
1506
1507 _rest = tmpMeta[2];
1508 /* Pattern matching succeeded */
1509#line 2365 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1510 tmpMeta[0] = omc_CommonSubExpression_commonSubExpressionUpdate(threadData, _rest, _m, _mT, _sysIn);
1511#line 1511 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1512 goto tmp2_done;
1513 }
1514 }
1515 goto tmp2_end;
1516 tmp2_end: ;
1517 }
1518 goto goto_1;
1519 tmp2_done:
1520 (void)tmp3;
1521 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
1522 goto tmp2_done2;
1523 goto_1:;
1524 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
1525 if (++tmp3 < 4) {
1526 goto tmp2_top;
1527 }
1528 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1529 tmp2_done2:;
1530 }
1531 }
1532 _sysOut = tmpMeta[0];
1533 _return: OMC_LABEL_UNUSED__attribute__((unused))
1534 return _sysOut;
1535}
1536
1537PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_getCSE3(threadData_t *threadData, modelica_metatype _partition, modelica_metatype _m, modelica_metatype _mT, modelica_metatype _vars, modelica_metatype _eqs, modelica_metatype _eqMap, modelica_metatype _varMap, modelica_metatype _cseIn)
1538{
1539 modelica_metatype _cseOut = NULL((void*)0);
1540 modelica_metatype tmpMeta[7] __attribute__((unused)) = {0};
1541 MMC_SO()mmc_check_stackoverflow(threadData);
1542 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1543 // _cseOut has no default value.
1544#line 1544 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1545 { /* matchcontinue expression */
1546 {
1547 modelica_integer _eqIdx1;
1548 modelica_integer _eqIdx2;
1549 modelica_integer _varIdx1;
1550 modelica_integer _varIdx2;
1551 modelica_metatype _varIdcs1 = NULL((void*)0);
1552 modelica_metatype _varIdcs2 = NULL((void*)0);
1553 modelica_metatype _sharedVarIdcs = NULL((void*)0);
1554 modelica_metatype _eqIdcs = NULL((void*)0);
1555 modelica_metatype _loop1 = NULL((void*)0);
1556 modelica_metatype _loops = NULL((void*)0);
1557 modelica_metatype _eq1 = NULL((void*)0);
1558 modelica_metatype _eq2 = NULL((void*)0);
1559 modelica_metatype _var1 = NULL((void*)0);
1560 modelica_metatype _var2 = NULL((void*)0);
1561 modelica_metatype _varExp1 = NULL((void*)0);
1562 modelica_metatype _varExp2 = NULL((void*)0);
1563 modelica_metatype _lhs = NULL((void*)0);
1564 modelica_metatype _rhs1 = NULL((void*)0);
1565 modelica_metatype _rhs2 = NULL((void*)0);
1566 modelica_metatype _varMapArr = NULL((void*)0);
1567 modelica_metatype _eqMapArr = NULL((void*)0);
1568 modelica_metatype _cseLst = NULL((void*)0);
1569 volatile mmc_switch_type tmp3;
1570 int tmp4;
1571 // _eqIdx1 has no default value.
1572 // _eqIdx2 has no default value.
1573 // _varIdx1 has no default value.
1574 // _varIdx2 has no default value.
1575 // _varIdcs1 has no default value.
1576 // _varIdcs2 has no default value.
1577 // _sharedVarIdcs has no default value.
1578 // _eqIdcs has no default value.
1579 // _loop1 has no default value.
1580 // _loops has no default value.
1581 // _eq1 has no default value.
1582 // _eq2 has no default value.
1583 // _var1 has no default value.
1584 // _var2 has no default value.
1585 // _varExp1 has no default value.
1586 // _varExp2 has no default value.
1587 // _lhs has no default value.
1588 // _rhs1 has no default value.
1589 // _rhs2 has no default value.
1590 // _varMapArr has no default value.
1591 // _eqMapArr has no default value.
1592 // _cseLst has no default value.
1593 tmp3 = 0;
1594 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
1595 tmp2_top:
1596 threadData->mmc_jumper = &new_mmc_jumper;
1597 for (; tmp3 < 2; tmp3++) {
1598 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
1599 case 0: {
1600 modelica_integer tmp5;
1601 modelica_integer tmp6;
1602 modelica_integer tmp7;
1603 modelica_integer tmp8;
1604 /* Pattern matching succeeded */
1605#line 2213 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1606 tmpMeta[1] = mmc_mk_cons(_partition, MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3)));
1607#line 2213 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1608 _loops = omc_ResolveLoops_resolveLoops__findLoops(threadData, tmpMeta[1], _m, _mT, 0, NULL((void*)0), NULL((void*)0), NULL((void*)0));
1609#line 1609 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1610
1611#line 2214 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1612 _cseLst = _cseIn;
1613#line 1613 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1614
1615#line 2215 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1616 {
1617#line 2215 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1618 modelica_metatype _loop1;
1619#line 2215 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1620 for (tmpMeta[1] = _loops; !listEmpty(tmpMeta[1])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
; tmpMeta[1]=MMC_CDR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
)
1621#line 2215 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1622 {
1623#line 2215 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1624 _loop1 = MMC_CAR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (1)))))
;
1625#line 2217 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1626 /* Pattern-matching assignment */
1627#line 2217 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1628 tmpMeta[2] = _loop1;
1629#line 2217 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1630 if (listEmpty(tmpMeta[2])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
1631#line 2217 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1632 tmpMeta[3] = MMC_CAR(tmpMeta[2])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (1)))))
;
1633#line 2217 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1634 tmpMeta[4] = MMC_CDR(tmpMeta[2])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
1635#line 2217 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1636 tmp5 = mmc_unbox_integer(tmpMeta[3])(((mmc_sint_t) (tmpMeta[3])) >> 1);
1637#line 2217 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1638 if (listEmpty(tmpMeta[4])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
1639#line 2217 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1640 tmpMeta[5] = MMC_CAR(tmpMeta[4])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (1)))))
;
1641#line 2217 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1642 tmpMeta[6] = MMC_CDR(tmpMeta[4])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (2)))))
;
1643#line 2217 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1644 tmp6 = mmc_unbox_integer(tmpMeta[5])(((mmc_sint_t) (tmpMeta[5])) >> 1);
1645#line 2217 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1646 if (!listEmpty(tmpMeta[6])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[6]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
1647#line 2217 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1648 _eqIdx1 = tmp5 /* pattern as ty=Integer */;
1649#line 2217 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1650 _eqIdx2 = tmp6 /* pattern as ty=Integer */;
1651#line 1651 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1652
1653#line 2218 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1654 _varIdcs1 = arrayGet(_m, _eqIdx1)nobox_arrayGet(threadData,_m,_eqIdx1);
1655#line 1655 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1656
1657#line 2219 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1658 _varIdcs2 = arrayGet(_m, _eqIdx2)nobox_arrayGet(threadData,_m,_eqIdx2);
1659#line 1659 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1660
1661#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1662 _sharedVarIdcs = omc_List_intersection1OnTrue(threadData, _varIdcs1, _varIdcs2, boxvar_intEq((void*)((char*)(&(boxvar_lit_intEq).header) + 3)) ,&_varIdcs1 ,&_varIdcs2);
1663#line 1663 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1664
1665#line 2224 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1666 /* Pattern-matching assignment */
1667#line 2224 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1668 tmpMeta[2] = _varIdcs1;
1669#line 2224 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1670 if (listEmpty(tmpMeta[2])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
1671#line 2224 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1672 tmpMeta[3] = MMC_CAR(tmpMeta[2])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (1)))))
;
1673#line 2224 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1674 tmpMeta[4] = MMC_CDR(tmpMeta[2])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
1675#line 2224 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1676 tmp7 = mmc_unbox_integer(tmpMeta[3])(((mmc_sint_t) (tmpMeta[3])) >> 1);
1677#line 2224 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1678 if (!listEmpty(tmpMeta[4])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
1679#line 2224 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1680 _varIdx1 = tmp7 /* pattern as ty=Integer */;
1681#line 1681 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1682
1683#line 2225 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1684 /* Pattern-matching assignment */
1685#line 2225 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1686 tmpMeta[2] = _varIdcs2;
1687#line 2225 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1688 if (listEmpty(tmpMeta[2])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
1689#line 2225 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1690 tmpMeta[3] = MMC_CAR(tmpMeta[2])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (1)))))
;
1691#line 2225 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1692 tmpMeta[4] = MMC_CDR(tmpMeta[2])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
1693#line 2225 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1694 tmp8 = mmc_unbox_integer(tmpMeta[3])(((mmc_sint_t) (tmpMeta[3])) >> 1);
1695#line 2225 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1696 if (!listEmpty(tmpMeta[4])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
1697#line 2225 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1698 _varIdx2 = tmp8 /* pattern as ty=Integer */;
1699#line 1699 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1700
1701#line 2226 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1702 /* Pattern-matching assignment */
1703#line 2226 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1704 tmpMeta[2] = omc_BackendEquation_getList(threadData, _loop1, _eqs);
1705#line 2226 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1706 if (listEmpty(tmpMeta[2])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
1707#line 2226 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1708 tmpMeta[3] = MMC_CAR(tmpMeta[2])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (1)))))
;
1709#line 2226 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1710 tmpMeta[4] = MMC_CDR(tmpMeta[2])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
1711#line 2226 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1712 if (listEmpty(tmpMeta[4])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
1713#line 2226 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1714 tmpMeta[5] = MMC_CAR(tmpMeta[4])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (1)))))
;
1715#line 2226 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1716 tmpMeta[6] = MMC_CDR(tmpMeta[4])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (2)))))
;
1717#line 2226 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1718 if (!listEmpty(tmpMeta[6])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[6]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
1719#line 2226 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1720 _eq1 = tmpMeta[3];
1721#line 2226 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1722 _eq2 = tmpMeta[5];
1723#line 1723 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1724
1725#line 2227 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1726 _var1 = omc_BackendVariable_getVarAt(threadData, _vars, _varIdx1);
1727#line 1727 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1728
1729#line 2228 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1730 _var2 = omc_BackendVariable_getVarAt(threadData, _vars, _varIdx2);
1731#line 1731 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1732
1733#line 2231 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1734 _varExp1 = omc_BackendVariable_varExp(threadData, _var1);
1735#line 1735 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1736
1737#line 2232 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1738 _varExp2 = omc_BackendVariable_varExp(threadData, _var2);
1739#line 1739 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1740
1741#line 2233 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1742 /* Pattern-matching assignment */
1743#line 2233 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1744 tmpMeta[2] = _eq1;
1745#line 2233 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1746 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],0,4)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))==(((4 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto goto_1;
1747#line 2233 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1748 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
1749#line 2233 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1750 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (3)))))
;
1751#line 2233 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1752 _lhs = tmpMeta[3];
1753#line 2233 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1754 _rhs1 = tmpMeta[4];
1755#line 1755 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1756
1757#line 2234 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1758 _rhs1 = omc_ExpressionSolve_solve(threadData, _lhs, _rhs1, _varExp1, mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), NULL((void*)0));
1759#line 1759 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1760
1761#line 2235 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1762 /* Pattern-matching assignment */
1763#line 2235 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1764 tmpMeta[2] = _eq2;
1765#line 2235 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1766 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],0,4)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))==(((4 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto goto_1;
1767#line 2235 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1768 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
1769#line 2235 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1770 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (3)))))
;
1771#line 2235 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1772 _lhs = tmpMeta[3];
1773#line 2235 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1774 _rhs2 = tmpMeta[4];
1775#line 1775 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1776
1777#line 2236 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1778 _rhs2 = omc_ExpressionSolve_solve(threadData, _lhs, _rhs2, _varExp2, mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), NULL((void*)0));
1779#line 1779 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1780
1781#line 2237 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1782 if(omc_Expression_expEqual(threadData, _rhs1, _rhs2))
1783#line 2237 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1784 {
1785#line 2242 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1786 _eqMapArr = listArray(_eqMap);
1787#line 1787 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1788
1789#line 2243 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1790 _varMapArr = listArray(_varMap);
1791#line 1791 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1792
1793#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1794 {
1795#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1796 modelica_metatype _D_24tmpVar1;
1797#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1798 modelica_metatype* tmp9;
1799#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1800 modelica_metatype _D_24tmpVar0;
1801#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1802 int tmp10;
1803#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1804 modelica_metatype _i_loopVar = 0;
1805#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1806 modelica_metatype _i;
1807#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1808 _i_loopVar = _sharedVarIdcs;
1809#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1810 tmpMeta[3] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
1811#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1812 _D_24tmpVar1 = tmpMeta[3]; /* defaultValue */
1813#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1814 tmp9 = &_D_24tmpVar1;
1815#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1816 while(1) {
1817#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1818 tmp10 = 1;
1819#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1820 if (!listEmpty(_i_loopVar)((*(mmc_uint_t*)((void*)((char*)(_i_loopVar) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) {
1821#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1822 _i = MMC_CAR(_i_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_i_loopVar) - 3
))) + (1)))))
;
1823#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1824 _i_loopVar = MMC_CDR(_i_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_i_loopVar) - 3
))) + (2)))))
;
1825#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1826 tmp10--;
1827#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1828 }
1829#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1830 if (tmp10 == 0) {
1831#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1832 _D_24tmpVar0 = arrayGet(_varMapArr, mmc_unbox_integer(_i))nobox_arrayGet(threadData,_varMapArr,(((mmc_sint_t) (_i)) >>
1))
;
1833#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1834 *tmp9 = mmc_mk_cons(_D_24tmpVar0,0);
1835#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1836 tmp9 = &MMC_CDR(*tmp9)(*(void**)(((void*)((void**)(((void*)((char*)(*tmp9) - 3))) +
(2)))))
;
1837#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1838 } else if (tmp10 == 1) {
1839#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1840 break;
1841#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1842 } else {
1843#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1844 goto goto_1;
1845#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1846 }
1847#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1848 }
1849#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1850 *tmp9 = mmc_mk_nil()((void*)((char*)(&(mmc_nil).header) + 3));
1851#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1852 tmpMeta[2] = _D_24tmpVar1;
1853#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1854 }
1855#line 2244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1856 _sharedVarIdcs = tmpMeta[2];
1857#line 1857 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1858
1859#line 2245 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1860 /* Pattern-matching assignment */
1861#line 2245 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1862 tmpMeta[2] = listAppend(_varIdcs1, _varIdcs2);
1863#line 2245 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1864 _varIdcs1 = tmpMeta[2];
1865#line 1865 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1866
1867#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1868 {
1869#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1870 modelica_metatype _D_24tmpVar3;
1871#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1872 modelica_metatype* tmp11;
1873#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1874 modelica_metatype _D_24tmpVar2;
1875#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1876 int tmp12;
1877#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1878 modelica_metatype _i_loopVar = 0;
1879#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1880 modelica_metatype _i;
1881#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1882 _i_loopVar = _varIdcs1;
1883#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1884 tmpMeta[3] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
1885#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1886 _D_24tmpVar3 = tmpMeta[3]; /* defaultValue */
1887#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1888 tmp11 = &_D_24tmpVar3;
1889#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1890 while(1) {
1891#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1892 tmp12 = 1;
1893#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1894 if (!listEmpty(_i_loopVar)((*(mmc_uint_t*)((void*)((char*)(_i_loopVar) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) {
1895#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1896 _i = MMC_CAR(_i_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_i_loopVar) - 3
))) + (1)))))
;
1897#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1898 _i_loopVar = MMC_CDR(_i_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_i_loopVar) - 3
))) + (2)))))
;
1899#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1900 tmp12--;
1901#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1902 }
1903#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1904 if (tmp12 == 0) {
1905#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1906 _D_24tmpVar2 = arrayGet(_varMapArr, mmc_unbox_integer(_i))nobox_arrayGet(threadData,_varMapArr,(((mmc_sint_t) (_i)) >>
1))
;
1907#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1908 *tmp11 = mmc_mk_cons(_D_24tmpVar2,0);
1909#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1910 tmp11 = &MMC_CDR(*tmp11)(*(void**)(((void*)((void**)(((void*)((char*)(*tmp11) - 3))) +
(2)))))
;
1911#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1912 } else if (tmp12 == 1) {
1913#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1914 break;
1915#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1916 } else {
1917#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1918 goto goto_1;
1919#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1920 }
1921#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1922 }
1923#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1924 *tmp11 = mmc_mk_nil()((void*)((char*)(&(mmc_nil).header) + 3));
1925#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1926 tmpMeta[2] = _D_24tmpVar3;
1927#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1928 }
1929#line 2246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1930 _varIdcs1 = tmpMeta[2];
1931#line 1931 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1932
1933#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1934 {
1935#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1936 modelica_metatype _D_24tmpVar5;
1937#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1938 modelica_metatype* tmp13;
1939#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1940 modelica_metatype _D_24tmpVar4;
1941#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1942 int tmp14;
1943#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1944 modelica_metatype _i_loopVar = 0;
1945#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1946 modelica_metatype _i;
1947#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1948 _i_loopVar = _loop1;
1949#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1950 tmpMeta[3] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
1951#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1952 _D_24tmpVar5 = tmpMeta[3]; /* defaultValue */
1953#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1954 tmp13 = &_D_24tmpVar5;
1955#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1956 while(1) {
1957#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1958 tmp14 = 1;
1959#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1960 if (!listEmpty(_i_loopVar)((*(mmc_uint_t*)((void*)((char*)(_i_loopVar) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) {
1961#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1962 _i = MMC_CAR(_i_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_i_loopVar) - 3
))) + (1)))))
;
1963#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1964 _i_loopVar = MMC_CDR(_i_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_i_loopVar) - 3
))) + (2)))))
;
1965#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1966 tmp14--;
1967#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1968 }
1969#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1970 if (tmp14 == 0) {
1971#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1972 _D_24tmpVar4 = arrayGet(_eqMapArr, mmc_unbox_integer(_i))nobox_arrayGet(threadData,_eqMapArr,(((mmc_sint_t) (_i)) >>
1))
;
1973#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1974 *tmp13 = mmc_mk_cons(_D_24tmpVar4,0);
1975#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1976 tmp13 = &MMC_CDR(*tmp13)(*(void**)(((void*)((void**)(((void*)((char*)(*tmp13) - 3))) +
(2)))))
;
1977#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1978 } else if (tmp14 == 1) {
1979#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1980 break;
1981#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1982 } else {
1983#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1984 goto goto_1;
1985#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1986 }
1987#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1988 }
1989#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1990 *tmp13 = mmc_mk_nil()((void*)((char*)(&(mmc_nil).header) + 3));
1991#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1992 tmpMeta[2] = _D_24tmpVar5;
1993#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1994 }
1995#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
1996 _eqIdcs = tmpMeta[2];
1997#line 1997 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
1998
1999#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2000 omc_GC_free(threadData, _eqMapArr);
2001#line 2001 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2002
2003#line 2249 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2004 omc_GC_free(threadData, _varMapArr);
2005#line 2005 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2006
2007#line 2250 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2008 tmpMeta[3] = mmc_mk_box4(3, &CommonSubExpression_CommonSubExp_ASSIGNMENT__CSE__desc, _eqIdcs, _sharedVarIdcs, _varIdcs1);
2009#line 2250 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2010 tmpMeta[2] = mmc_mk_cons(tmpMeta[3], _cseLst);
2011#line 2250 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2012 _cseLst = tmpMeta[2];
2013#line 2013 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2014 }
2015 }
2016 }
2017#line 2253 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2018 tmpMeta[0] = _cseLst;
2019#line 2019 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2020 goto tmp2_done;
2021 }
2022 case 1: {
2023 /* Pattern matching succeeded */
2024#line 2254 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2025 tmpMeta[0] = _cseIn;
2026#line 2026 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2027 goto tmp2_done;
2028 }
2029 }
2030 goto tmp2_end;
2031 tmp2_end: ;
2032 }
2033 goto goto_1;
2034 tmp2_done:
2035 (void)tmp3;
2036 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
2037 goto tmp2_done2;
2038 goto_1:;
2039 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
2040 if (++tmp3 < 2) {
2041 goto tmp2_top;
2042 }
2043 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2044 tmp2_done2:;
2045 }
2046 }
2047 _cseOut = tmpMeta[0];
2048 _return: OMC_LABEL_UNUSED__attribute__((unused))
2049 return _cseOut;
2050}
2051
2052PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_getCSE2(threadData_t *threadData, modelica_metatype _partition, modelica_metatype _m, modelica_metatype _mT, modelica_metatype _vars, modelica_metatype _eqs, modelica_metatype _eqMap, modelica_metatype _varMap, modelica_metatype _cseIn)
2053{
2054 modelica_metatype _cseOut = NULL((void*)0);
2055 modelica_metatype tmpMeta[6] __attribute__((unused)) = {0};
2056 MMC_SO()mmc_check_stackoverflow(threadData);
2057 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2058 // _cseOut has no default value.
2059#line 2059 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2060 { /* matchcontinue expression */
2061 volatile modelica_metatype tmp3_1;
2062 tmp3_1 = _partition;
2063 {
2064 modelica_integer _sharedVarIdx;
2065 modelica_integer _eqIdx1;
2066 modelica_integer _eqIdx2;
2067 modelica_integer _varIdx1;
2068 modelica_integer _varIdx2;
2069 modelica_metatype _varIdcs1 = NULL((void*)0);
2070 modelica_metatype _varIdcs2 = NULL((void*)0);
2071 modelica_metatype _sharedVarIdcs = NULL((void*)0);
2072 modelica_metatype _eqIdcs = NULL((void*)0);
2073 modelica_metatype _eq1 = NULL((void*)0);
2074 modelica_metatype _eq2 = NULL((void*)0);
2075 modelica_metatype _var1 = NULL((void*)0);
2076 modelica_metatype _var2 = NULL((void*)0);
2077 modelica_metatype _varExp1 = NULL((void*)0);
2078 modelica_metatype _varExp2 = NULL((void*)0);
2079 modelica_metatype _lhs = NULL((void*)0);
2080 modelica_metatype _rhs1 = NULL((void*)0);
2081 modelica_metatype _rhs2 = NULL((void*)0);
2082 volatile mmc_switch_type tmp3;
2083 int tmp4;
2084 // _sharedVarIdx has no default value.
2085 // _eqIdx1 has no default value.
2086 // _eqIdx2 has no default value.
2087 // _varIdx1 has no default value.
2088 // _varIdx2 has no default value.
2089 // _varIdcs1 has no default value.
2090 // _varIdcs2 has no default value.
2091 // _sharedVarIdcs has no default value.
2092 // _eqIdcs has no default value.
2093 // _eq1 has no default value.
2094 // _eq2 has no default value.
2095 // _var1 has no default value.
2096 // _var2 has no default value.
2097 // _varExp1 has no default value.
2098 // _varExp2 has no default value.
2099 // _lhs has no default value.
2100 // _rhs1 has no default value.
2101 // _rhs2 has no default value.
2102 tmp3 = 0;
2103 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
2104 tmp2_top:
2105 threadData->mmc_jumper = &new_mmc_jumper;
2106 for (; tmp3 < 2; tmp3++) {
2107 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
2108 case 0: {
2109 modelica_integer tmp5;
2110 modelica_integer tmp6;
2111 modelica_integer tmp7;
2112 modelica_integer tmp8;
2113 modelica_integer tmp9;
2114 modelica_boolean tmp10;
2115 if (listEmpty(tmp3_1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp2_end;
2116 tmpMeta[1] = MMC_CAR(tmp3_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(1)))))
;
2117 tmpMeta[2] = MMC_CDR(tmp3_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
2118 tmp5 = mmc_unbox_integer(tmpMeta[1])(((mmc_sint_t) (tmpMeta[1])) >> 1);
2119 if (listEmpty(tmpMeta[2])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp2_end;
2120 tmpMeta[3] = MMC_CAR(tmpMeta[2])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (1)))))
;
2121 tmpMeta[4] = MMC_CDR(tmpMeta[2])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
2122 tmp6 = mmc_unbox_integer(tmpMeta[3])(((mmc_sint_t) (tmpMeta[3])) >> 1);
2123 if (!listEmpty(tmpMeta[4])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp2_end;
2124 _eqIdx1 = tmp5 /* pattern as ty=Integer */;
2125 _eqIdx2 = tmp6 /* pattern as ty=Integer */;
2126 /* Pattern matching succeeded */
2127#line 2153 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2128 _varIdcs1 = arrayGet(_m, _eqIdx1)nobox_arrayGet(threadData,_m,_eqIdx1);
2129#line 2129 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2130
2131#line 2154 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2132 _varIdcs2 = arrayGet(_m, _eqIdx2)nobox_arrayGet(threadData,_m,_eqIdx2);
2133#line 2133 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2134
2135#line 2155 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2136 _sharedVarIdcs = omc_List_intersection1OnTrue(threadData, _varIdcs1, _varIdcs2, boxvar_intEq((void*)((char*)(&(boxvar_lit_intEq).header) + 3)) ,&_varIdcs1 ,&_varIdcs2);
2137#line 2137 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2138
2139#line 2157 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2140 /* Pattern-matching assignment */
2141#line 2157 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2142 tmpMeta[1] = _varIdcs1;
2143#line 2157 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2144 if (listEmpty(tmpMeta[1])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
2145#line 2157 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2146 tmpMeta[2] = MMC_CAR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (1)))))
;
2147#line 2157 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2148 tmpMeta[3] = MMC_CDR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
;
2149#line 2157 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2150 tmp7 = mmc_unbox_integer(tmpMeta[2])(((mmc_sint_t) (tmpMeta[2])) >> 1);
2151#line 2157 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2152 if (!listEmpty(tmpMeta[3])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
2153#line 2157 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2154 _varIdx1 = tmp7 /* pattern as ty=Integer */;
2155#line 2155 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2156
2157#line 2158 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2158 /* Pattern-matching assignment */
2159#line 2158 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2160 tmpMeta[1] = _varIdcs2;
2161#line 2158 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2162 if (listEmpty(tmpMeta[1])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
2163#line 2158 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2164 tmpMeta[2] = MMC_CAR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (1)))))
;
2165#line 2158 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2166 tmpMeta[3] = MMC_CDR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
;
2167#line 2158 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2168 tmp8 = mmc_unbox_integer(tmpMeta[2])(((mmc_sint_t) (tmpMeta[2])) >> 1);
2169#line 2158 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2170 if (!listEmpty(tmpMeta[3])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
2171#line 2158 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2172 _varIdx2 = tmp8 /* pattern as ty=Integer */;
2173#line 2173 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2174
2175#line 2159 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2176 /* Pattern-matching assignment */
2177#line 2159 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2178 tmpMeta[1] = _sharedVarIdcs;
2179#line 2159 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2180 if (listEmpty(tmpMeta[1])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
2181#line 2159 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2182 tmpMeta[2] = MMC_CAR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (1)))))
;
2183#line 2159 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2184 tmpMeta[3] = MMC_CDR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
;
2185#line 2159 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2186 tmp9 = mmc_unbox_integer(tmpMeta[2])(((mmc_sint_t) (tmpMeta[2])) >> 1);
2187#line 2159 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2188 if (!listEmpty(tmpMeta[3])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
2189#line 2159 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2190 _sharedVarIdx = tmp9 /* pattern as ty=Integer */;
2191#line 2191 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2192
2193#line 2160 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2194 /* Pattern-matching assignment */
2195#line 2160 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2196 tmpMeta[1] = omc_BackendEquation_getList(threadData, _partition, _eqs);
2197#line 2160 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2198 if (listEmpty(tmpMeta[1])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
2199#line 2160 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2200 tmpMeta[2] = MMC_CAR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (1)))))
;
2201#line 2160 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2202 tmpMeta[3] = MMC_CDR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
;
2203#line 2160 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2204 if (listEmpty(tmpMeta[3])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
2205#line 2160 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2206 tmpMeta[4] = MMC_CAR(tmpMeta[3])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (1)))))
;
2207#line 2160 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2208 tmpMeta[5] = MMC_CDR(tmpMeta[3])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (2)))))
;
2209#line 2160 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2210 if (!listEmpty(tmpMeta[5])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[5]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_1;
2211#line 2160 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2212 _eq1 = tmpMeta[2];
2213#line 2160 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2214 _eq2 = tmpMeta[4];
2215#line 2215 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2216
2217#line 2161 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2218 omc_BackendVariable_getVarAt(threadData, _vars, _sharedVarIdx);
2219#line 2219 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2220
2221#line 2162 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2222 _var1 = omc_BackendVariable_getVarAt(threadData, _vars, _varIdx1);
2223#line 2223 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2224
2225#line 2163 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2226 _var2 = omc_BackendVariable_getVarAt(threadData, _vars, _varIdx2);
2227#line 2227 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2228
2229#line 2166 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2230 _varExp1 = omc_BackendVariable_varExp(threadData, _var1);
2231#line 2231 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2232
2233#line 2167 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2234 _varExp2 = omc_BackendVariable_varExp(threadData, _var2);
2235#line 2235 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2236
2237#line 2168 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2238 /* Pattern-matching assignment */
2239#line 2168 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2240 tmpMeta[1] = _eq1;
2241#line 2168 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2242 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],0,4)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((4 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto goto_1;
2243#line 2168 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2244 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
;
2245#line 2168 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2246 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (3)))))
;
2247#line 2168 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2248 _lhs = tmpMeta[2];
2249#line 2168 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2250 _rhs1 = tmpMeta[3];
2251#line 2251 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2252
2253#line 2169 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2254 _rhs1 = omc_ExpressionSolve_solve(threadData, _lhs, _rhs1, _varExp1, mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), NULL((void*)0));
2255#line 2255 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2256
2257#line 2170 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2258 /* Pattern-matching assignment */
2259#line 2170 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2260 tmpMeta[1] = _eq2;
2261#line 2170 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2262 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],0,4)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((4 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto goto_1;
2263#line 2170 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2264 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
;
2265#line 2170 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2266 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (3)))))
;
2267#line 2170 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2268 _lhs = tmpMeta[2];
2269#line 2170 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2270 _rhs2 = tmpMeta[3];
2271#line 2271 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2272
2273#line 2171 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2274 _rhs2 = omc_ExpressionSolve_solve(threadData, _lhs, _rhs2, _varExp2, mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), NULL((void*)0));
2275#line 2275 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2276
2277#line 2172 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2278 /* Pattern-matching assignment */
2279#line 2172 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2280 tmp10 = omc_Expression_expEqual(threadData, _rhs1, _rhs2);
2281#line 2172 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2282 if (1 != tmp10) goto goto_1;
2283#line 2283 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2284
2285#line 2177 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2286 _sharedVarIdcs = omc_List_map1(threadData, _sharedVarIdcs, boxvar_List_getIndexFirst((void*)((char*)(&(boxvar_lit_List_getIndexFirst).header)
+ 3))
, _varMap);
2287#line 2287 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2288
2289#line 2178 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2290 /* Pattern-matching assignment */
2291#line 2178 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2292 tmpMeta[1] = listAppend(_varIdcs1, _varIdcs2);
2293#line 2178 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2294 _varIdcs1 = tmpMeta[1];
2295#line 2295 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2296
2297#line 2179 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2298 _varIdcs1 = omc_List_map1(threadData, _varIdcs1, boxvar_List_getIndexFirst((void*)((char*)(&(boxvar_lit_List_getIndexFirst).header)
+ 3))
, _varMap);
2299#line 2299 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2300
2301#line 2180 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2302 _eqIdcs = omc_List_map1(threadData, _partition, boxvar_List_getIndexFirst((void*)((char*)(&(boxvar_lit_List_getIndexFirst).header)
+ 3))
, _eqMap);
2303#line 2303 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2304#line 2181 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2305 tmpMeta[2] = mmc_mk_box4(3, &CommonSubExpression_CommonSubExp_ASSIGNMENT__CSE__desc, _eqIdcs, _sharedVarIdcs, _varIdcs1);
2306#line 2181 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2307 tmpMeta[1] = mmc_mk_cons(tmpMeta[2], _cseIn);
2308#line 2181 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2309 tmpMeta[0] = tmpMeta[1];
2310#line 2310 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2311 goto tmp2_done;
2312 }
2313 case 1: {
2314
2315 /* Pattern matching succeeded */
2316#line 2182 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2317 tmpMeta[0] = _cseIn;
2318#line 2318 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2319 goto tmp2_done;
2320 }
2321 }
2322 goto tmp2_end;
2323 tmp2_end: ;
2324 }
2325 goto goto_1;
2326 tmp2_done:
2327 (void)tmp3;
2328 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
2329 goto tmp2_done2;
2330 goto_1:;
2331 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
2332 if (++tmp3 < 2) {
2333 goto tmp2_top;
2334 }
2335 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2336 tmp2_done2:;
2337 }
2338 }
2339 _cseOut = tmpMeta[0];
2340 _return: OMC_LABEL_UNUSED__attribute__((unused))
2341 return _cseOut;
2342}
2343
2344PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_shortenPaths(threadData_t *threadData, modelica_metatype _allPartitions, modelica_metatype _mIn, modelica_metatype _mTIn, modelica_metatype _allVars, modelica_metatype _allEqs, modelica_metatype _eqMap, modelica_metatype _varMap, modelica_metatype _cseIn, modelica_boolean _isInitial)
2345{
2346 modelica_metatype _cseOut = NULL((void*)0);
2347 modelica_metatype _m = NULL((void*)0);
2348 modelica_metatype _mT = NULL((void*)0);
2349 modelica_metatype _me = NULL((void*)0);
2350 modelica_metatype _meT = NULL((void*)0);
2351 modelica_metatype _eqSys = NULL((void*)0);
2352 modelica_metatype _vars = NULL((void*)0);
2353 modelica_metatype _pathVars = NULL((void*)0);
2354 modelica_metatype _varLst = NULL((void*)0);
2355 modelica_metatype _eqLst = NULL((void*)0);
2356 modelica_metatype _eqLst_all = NULL((void*)0);
2357 modelica_metatype _eqs = NULL((void*)0);
2358 modelica_metatype _varAtts = NULL((void*)0);
2359 modelica_metatype _eqAtts = NULL((void*)0);
2360 modelica_integer _numVars;
2361 modelica_integer _varIdx;
2362 modelica_metatype _pathVarIdxMap = NULL((void*)0);
2363 modelica_metatype _partition = NULL((void*)0);
2364 modelica_metatype _varIdcs = NULL((void*)0);
2365 modelica_metatype _adjEqs = NULL((void*)0);
2366 modelica_metatype _pathVarIdcs = NULL((void*)0);
2367 modelica_metatype _cses = NULL((void*)0);
2368 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
2369 MMC_SO()mmc_check_stackoverflow(threadData);
2370 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2371 // _cseOut has no default value.
2372 // _m has no default value.
2373 // _mT has no default value.
2374 // _me has no default value.
2375 // _meT has no default value.
2376 // _eqSys has no default value.
2377 // _vars has no default value.
2378 // _pathVars has no default value.
2379 // _varLst has no default value.
2380 // _eqLst has no default value.
2381 // _eqLst_all has no default value.
2382 // _eqs has no default value.
2383 // _varAtts has no default value.
2384 // _eqAtts has no default value.
2385 // _numVars has no default value.
2386 // _varIdx has no default value.
2387 // _pathVarIdxMap has no default value.
2388 // _partition has no default value.
2389 // _varIdcs has no default value.
2390 // _adjEqs has no default value.
2391 // _pathVarIdcs has no default value.
2392 // _cses has no default value.
2393#line 2393 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2394 { /* matchcontinue expression */
2395 {
2396 volatile mmc_switch_type tmp3;
2397 int tmp4;
2398 tmp3 = 0;
2399 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
2400 tmp2_top:
2401 threadData->mmc_jumper = &new_mmc_jumper;
2402 for (; tmp3 < 2; tmp3++) {
2403 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
2404 case 0: {
2405 modelica_integer tmp7;
2406 modelica_integer tmp8;
2407 modelica_integer tmp9;
2408 /* Pattern matching succeeded */
2409#line 2084 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2410 _numVars = omc_BackendVariable_varsSize(threadData, _allVars);
2411#line 2411 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2412
2413#line 2085 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2414 omc_List_filter1OnTrueSync(threadData, omc_List_map(threadData, arrayList(_mTIn), boxvar_listLength((void*)((char*)(&(boxvar_lit_listLength).header) + 3))), boxvar_intEq((void*)((char*)(&(boxvar_lit_intEq).header) + 3)), mmc_mk_integermmc_mk_icon(((modelica_integer) 2)), omc_List_intRange(threadData, _numVars) ,&_pathVarIdcs);
2415#line 2415 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2416
2417#line 2086 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2418 _pathVars = omc_BackendVariable_listVar1(threadData, omc_List_map1(threadData, _pathVarIdcs, boxvar_BackendVariable_getVarAtIndexFirst((void*)((char*)(&(boxvar_lit_BackendVariable_getVarAtIndexFirst
).header) + 3))
, _allVars));
2419#line 2419 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2420
2421#line 2087 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2422 _pathVarIdxMap = listArray(omc_List_map1(threadData, _pathVarIdcs, boxvar_Array_getIndexFirst((void*)((char*)(&(boxvar_lit_Array_getIndexFirst).header
) + 3))
, _varMap));
2423#line 2423 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2424
2425#line 2088 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2426 _cses = _cseIn;
2427#line 2427 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2428
2429#line 2089 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2430 _eqLst_all = omc_BackendEquation_equationList(threadData, _allEqs);
2431#line 2431 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2432
2433#line 2090 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2434 if((omc_BackendVariable_varsSize(threadData, _pathVars) > ((modelica_integer) 0)))
2435#line 2090 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2436 {
2437#line 2091 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2438 {
2439#line 2091 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2440 modelica_metatype _partition;
2441#line 2091 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2442 for (tmpMeta[0] = _allPartitions; !listEmpty(tmpMeta[0])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
; tmpMeta[0]=MMC_CDR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (2)))))
)
2443#line 2091 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2444 {
2445#line 2091 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2446 _partition = MMC_CAR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (1)))))
;
2447#line 2096 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2448 _eqLst = omc_List_map1(threadData, _partition, boxvar_List_getIndexFirst((void*)((char*)(&(boxvar_lit_List_getIndexFirst).header)
+ 3))
, _eqLst_all);
2449#line 2449 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2450
2451#line 2097 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2452 _eqs = omc_BackendEquation_listEquation(threadData, _eqLst);
2453#line 2453 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2454
2455#line 2099 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2456 tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2457#line 2099 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2458 _eqSys = omc_BackendDAEUtil_createEqSystem(threadData, _pathVars, _eqs, tmpMeta[1], _OMC_LIT15((void*)((char*)(&(_OMC_LIT_STRUCT15).header) + 3)), omc_BackendEquation_emptyEqns(threadData));
2459#line 2459 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2460
2461#line 2100 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2462 omc_BackendDAEUtil_getAdjacencyMatrix(threadData, _eqSys, _OMC_LIT16((void*)((char*)(&(_OMC_LIT_STRUCT16).header) + 3)), mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), _isInitial ,&_m ,&_mT);
2463#line 2463 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2464
2465#line 2108 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2466 tmp7 = ((modelica_integer) 1); tmp8 = 1; tmp9 = arrayLength(_mT);
2467#line 2108 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2468 if(!(((tmp8 > 0) && (tmp7 > tmp9)) || ((tmp8 < 0) && (tmp7 < tmp9))))
2469#line 2108 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2470 {
2471#line 2108 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2472 modelica_integer _idx;
2473#line 2108 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2474 for(_idx = ((modelica_integer) 1); in_range_integer(_idx, tmp7, tmp9); _idx += tmp8)
2475#line 2108 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2476 {
2477#line 2109 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2478 _adjEqs = arrayGet(_mT, _idx)nobox_arrayGet(threadData,_mT,_idx);
2479#line 2479 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2480
2481#line 2111 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2482 if((listLength(_adjEqs) == ((modelica_integer) 2)))
2483#line 2111 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2484 {
2485#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2486 {
2487#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2488 modelica_metatype _D_24tmpVar7;
2489#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2490 modelica_metatype* tmp5;
2491#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2492 modelica_metatype _D_24tmpVar6;
2493#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2494 int tmp6;
2495#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2496 modelica_metatype _eq_loopVar = 0;
2497#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2498 modelica_metatype _eq;
2499#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2500 _eq_loopVar = _adjEqs;
2501#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2502 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2503#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2504 _D_24tmpVar7 = tmpMeta[2]; /* defaultValue */
2505#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2506 tmp5 = &_D_24tmpVar7;
2507#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2508 while(1) {
2509#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2510 tmp6 = 1;
2511#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2512 if (!listEmpty(_eq_loopVar)((*(mmc_uint_t*)((void*)((char*)(_eq_loopVar) - 3))) == (((0)
<< 10) + (((0) & 255) << 2)))
) {
2513#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2514 _eq = MMC_CAR(_eq_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_eq_loopVar) - 3
))) + (1)))))
;
2515#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2516 _eq_loopVar = MMC_CDR(_eq_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_eq_loopVar) - 3
))) + (2)))))
;
2517#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2518 tmp6--;
2519#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2520 }
2521#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2522 if (tmp6 == 0) {
2523#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2524 _D_24tmpVar6 = arrayGet(_eqMap, mmc_unbox_integer(listGet(_partition, mmc_unbox_integer(_eq))))nobox_arrayGet(threadData,_eqMap,(((mmc_sint_t) (boxptr_listGet
(threadData,_partition,mmc_mk_icon((((mmc_sint_t) (_eq)) >>
1))))) >> 1))
;
2525#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2526 *tmp5 = mmc_mk_cons(_D_24tmpVar6,0);
2527#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2528 tmp5 = &MMC_CDR(*tmp5)(*(void**)(((void*)((void**)(((void*)((char*)(*tmp5) - 3))) +
(2)))))
;
2529#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2530 } else if (tmp6 == 1) {
2531#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2532 break;
2533#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2534 } else {
2535#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2536 goto goto_1;
2537#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2538 }
2539#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2540 }
2541#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2542 *tmp5 = mmc_mk_nil()((void*)((char*)(&(mmc_nil).header) + 3));
2543#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2544 tmpMeta[1] = _D_24tmpVar7;
2545#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2546 }
2547#line 2114 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2548 _adjEqs = tmpMeta[1];
2549#line 2549 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2550
2551#line 2115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2552 _varIdx = mmc_unbox_integer(arrayGet(_pathVarIdxMap, _idx))(((mmc_sint_t) (nobox_arrayGet(threadData,_pathVarIdxMap,_idx
))) >> 1)
;
2553#line 2553 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2554
2555#line 2116 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2556 tmpMeta[2] = mmc_mk_box3(4, &CommonSubExpression_CommonSubExp_SHORTCUT__CSE__desc, _adjEqs, mmc_mk_integermmc_mk_icon(_varIdx));
2557#line 2116 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2558 tmpMeta[1] = mmc_mk_cons(tmpMeta[2], _cses);
2559#line 2116 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2560 _cses = tmpMeta[1];
2561#line 2561 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2562 }
2563 }
2564 }
2565
2566#line 2119 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2567 omc_GC_free(threadData, _m);
2568#line 2568 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2569
2570#line 2120 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2571 omc_GC_free(threadData, _mT);
2572#line 2572 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2573 }
2574 }
2575 }
2576
2577#line 2124 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2578 _cseOut = _cses;
2579#line 2579 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2580#line 2580 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2581 goto tmp2_done;
2582 }
2583 case 1: {
2584 /* Pattern matching succeeded */
2585#line 2126 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2586 _cseOut = _cseIn;
2587#line 2587 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2588#line 2588 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2589 goto tmp2_done;
2590 }
2591 }
2592 goto tmp2_end;
2593 tmp2_end: ;
2594 }
2595 goto goto_1;
2596 tmp2_done:
2597 (void)tmp3;
2598 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
2599 goto tmp2_done2;
2600 goto_1:;
2601 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
2602 if (++tmp3 < 2) {
2603 goto tmp2_top;
2604 }
2605 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2606 tmp2_done2:;
2607 }
2608 }
2609 ;
2610 _return: OMC_LABEL_UNUSED__attribute__((unused))
2611 return _cseOut;
2612}
2613PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_shortenPaths(threadData_t *threadData, modelica_metatype _allPartitions, modelica_metatype _mIn, modelica_metatype _mTIn, modelica_metatype _allVars, modelica_metatype _allEqs, modelica_metatype _eqMap, modelica_metatype _varMap, modelica_metatype _cseIn, modelica_metatype _isInitial)
2614{
2615 modelica_integer tmp1;
2616 modelica_metatype _cseOut = NULL((void*)0);
2617 tmp1 = mmc_unbox_integer(_isInitial)(((mmc_sint_t) (_isInitial)) >> 1);
2618 _cseOut = omc_CommonSubExpression_shortenPaths(threadData, _allPartitions, _mIn, _mTIn, _allVars, _allEqs, _eqMap, _varMap, _cseIn, tmp1);
2619 /* skip box _cseOut; list<CommonSubExpression.CommonSubExp> */
2620 return _cseOut;
2621}
2622
2623static modelica_metatype closure0_CommonSubExpression_getCSE2(threadData_t *thData, modelica_metatype closure, modelica_metatype partition, modelica_metatype cseIn)
2624{
2625 modelica_metatype m = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),1))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (1)))))
;
2626 modelica_metatype mT = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),2))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (2)))))
;
2627 modelica_metatype vars = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),3))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (3)))))
;
2628 modelica_metatype eqs = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),4))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (4)))))
;
2629 modelica_metatype eqMap = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),5))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (5)))))
;
2630 modelica_metatype varMap = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),6))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (6)))))
;
2631 return boxptr_CommonSubExpression_getCSE2omc_CommonSubExpression_getCSE2(thData, partition, m, mT, vars, eqs, eqMap, varMap, cseIn);
2632}static modelica_metatype closure1_CommonSubExpression_getCSE3(threadData_t *thData, modelica_metatype closure, modelica_metatype partition, modelica_metatype cseIn)
2633{
2634 modelica_metatype m = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),1))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (1)))))
;
2635 modelica_metatype mT = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),2))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (2)))))
;
2636 modelica_metatype vars = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),3))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (3)))))
;
2637 modelica_metatype eqs = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),4))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (4)))))
;
2638 modelica_metatype eqMap = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),5))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (5)))))
;
2639 modelica_metatype varMap = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),6))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (6)))))
;
2640 return boxptr_CommonSubExpression_getCSE3omc_CommonSubExpression_getCSE3(thData, partition, m, mT, vars, eqs, eqMap, varMap, cseIn);
2641}
2642PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_commonSubExpressionFind(threadData_t *threadData, modelica_metatype _mIn, modelica_metatype _mTIn, modelica_metatype _varsIn, modelica_metatype _eqsIn, modelica_boolean _isInitial)
2643{
2644 modelica_metatype _cseOut = NULL((void*)0);
2645 modelica_integer _numVars;
2646 modelica_metatype _eqIdcs = NULL((void*)0);
2647 modelica_metatype _varIdcs = NULL((void*)0);
2648 modelica_metatype _lengthLst = NULL((void*)0);
2649 modelica_metatype _range = NULL((void*)0);
2650 modelica_metatype _arrLst = NULL((void*)0);
2651 modelica_metatype _partitions = NULL((void*)0);
2652 modelica_metatype _vars = NULL((void*)0);
2653 modelica_metatype _linPathVars = NULL((void*)0);
2654 modelica_metatype _eqs = NULL((void*)0);
2655 modelica_metatype _eqSys = NULL((void*)0);
2656 modelica_metatype _m = NULL((void*)0);
2657 modelica_metatype _mT = NULL((void*)0);
2658 modelica_metatype _eqLst = NULL((void*)0);
2659 modelica_metatype _varLst = NULL((void*)0);
2660 modelica_metatype _cseLst2 = NULL((void*)0);
2661 modelica_metatype _cseLst3 = NULL((void*)0);
2662 modelica_metatype _shortenPathsCSE = NULL((void*)0);
2663 modelica_metatype _varAtts = NULL((void*)0);
2664 modelica_metatype _eqAtts = NULL((void*)0);
2665 modelica_metatype _varIdcsSet = NULL((void*)0);
2666 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
2667 MMC_SO()mmc_check_stackoverflow(threadData);
2668 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2669 // _cseOut has no default value.
2670 // _numVars has no default value.
2671 // _eqIdcs has no default value.
2672 // _varIdcs has no default value.
2673 // _lengthLst has no default value.
2674 // _range has no default value.
2675 // _arrLst has no default value.
2676 // _partitions has no default value.
2677 // _vars has no default value.
2678 // _linPathVars has no default value.
2679 // _eqs has no default value.
2680 // _eqSys has no default value.
2681 // _m has no default value.
2682 // _mT has no default value.
2683 // _eqLst has no default value.
2684 // _varLst has no default value.
2685 // _cseLst2 has no default value.
2686 // _cseLst3 has no default value.
2687 // _shortenPathsCSE has no default value.
2688 // _varAtts has no default value.
2689 // _eqAtts has no default value.
2690 // _varIdcsSet has no default value.
2691#line 2691 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2692 { /* matchcontinue expression */
2693 {
2694 volatile mmc_switch_type tmp3;
2695 int tmp4;
2696 tmp3 = 0;
2697 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
2698 tmp2_top:
2699 threadData->mmc_jumper = &new_mmc_jumper;
2700 for (; tmp3 < 2; tmp3++) {
2701 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
2702 case 0: {
2703 /* Pattern matching succeeded */
2704#line 1996 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2705 _range = omc_List_intRange(threadData, arrayLength(_mIn));
2706#line 2706 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2707
2708#line 1997 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2709 _arrLst = arrayList(_mIn);
2710#line 2710 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2711
2712#line 1998 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2713 _lengthLst = omc_List_map(threadData, _arrLst, boxvar_listLength((void*)((char*)(&(boxvar_lit_listLength).header) + 3)));
2714#line 2714 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2715
2716#line 2002 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2717 omc_List_filter1OnTrueSync(threadData, _lengthLst, boxvar_intEq((void*)((char*)(&(boxvar_lit_intEq).header) + 3)), mmc_mk_integermmc_mk_icon(((modelica_integer) 2)), _range ,&_eqIdcs);
2718#line 2718 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2719
2720#line 2003 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2721 _eqLst = omc_List_filterOnTrueSync(threadData, omc_BackendEquation_getList(threadData, _eqIdcs, _eqsIn), boxvar_BackendEquation_isNotAlgorithm((void*)((char*)(&(boxvar_lit_BackendEquation_isNotAlgorithm
).header) + 3))
, _eqIdcs ,&_eqIdcs);
2722#line 2722 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2723
2724#line 2004 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2725 _eqs = omc_BackendEquation_listEquation(threadData, _eqLst);
2726#line 2726 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2727
2728#line 2005 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2729 _varIdcs = omc_List_unique(threadData, omc_List_flatten(threadData, omc_List_map1(threadData, _eqIdcs, boxvar_Array_getIndexFirst((void*)((char*)(&(boxvar_lit_Array_getIndexFirst).header
) + 3))
, _mIn)));
2730#line 2730 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2731
2732#line 2006 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2733 _varLst = omc_List_map1(threadData, _varIdcs, boxvar_BackendVariable_getVarAtIndexFirst((void*)((char*)(&(boxvar_lit_BackendVariable_getVarAtIndexFirst
).header) + 3))
, _varsIn);
2734#line 2734 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2735
2736#line 2008 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2737 _vars = omc_BackendVariable_listVar1(threadData, _varLst);
2738#line 2738 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2739
2740#line 2009 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2741 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2742#line 2009 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2743 _eqSys = omc_BackendDAEUtil_createEqSystem(threadData, _vars, _eqs, tmpMeta[0], _OMC_LIT15((void*)((char*)(&(_OMC_LIT_STRUCT15).header) + 3)), omc_BackendEquation_emptyEqns(threadData));
2744#line 2744 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2745
2746#line 2010 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2747 omc_BackendDAEUtil_getAdjacencyMatrix(threadData, _eqSys, _OMC_LIT17((void*)((char*)(&(_OMC_LIT_STRUCT17).header) + 3)), mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), _isInitial ,&_m ,&_mT);
2748#line 2748 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2749
2750#line 2017 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2751 _partitions = arrayList(omc_ResolveLoops_partitionBipartiteGraph(threadData, _m, _mT));
2752#line 2752 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2753
2754#line 2018 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2755 _partitions = omc_List_filterOnFalse(threadData, _partitions, boxvar_listEmpty((void*)((char*)(&(boxvar_lit_listEmpty).header) + 3)));
2756#line 2756 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2757
2758#line 2020 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2759 tmpMeta[0] = mmc_mk_box6(0, _m, _mT, _vars, _eqs, _eqIdcs, _varIdcs);
2760#line 2020 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2761 tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2762#line 2020 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2763 _cseLst2 = omc_List_fold(threadData, _partitions, (modelica_fnptr) mmc_mk_box2(0,closure0_CommonSubExpression_getCSE2,tmpMeta[0]), tmpMeta[1]);
2764#line 2764 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2765
2766#line 2022 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2767 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2768#line 2022 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2769 _shortenPathsCSE = omc_CommonSubExpression_shortenPaths(threadData, _partitions, _m, _mT, _vars, _eqs, listArray(_eqIdcs), listArray(_varIdcs), tmpMeta[0], _isInitial);
2770#line 2770 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2771
2772#line 2026 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2773 omc_List_filter1OnTrueSync(threadData, _lengthLst, boxvar_intEq((void*)((char*)(&(boxvar_lit_intEq).header) + 3)), mmc_mk_integermmc_mk_icon(((modelica_integer) 3)), _range ,&_eqIdcs);
2774#line 2774 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2775
2776#line 2027 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2777 _eqLst = omc_List_filterOnTrueSync(threadData, omc_BackendEquation_getList(threadData, _eqIdcs, _eqsIn), boxvar_BackendEquation_isNotAlgorithm((void*)((char*)(&(boxvar_lit_BackendEquation_isNotAlgorithm
).header) + 3))
, _eqIdcs ,&_eqIdcs);
2778#line 2778 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2779
2780#line 2028 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2781 _eqs = omc_BackendEquation_listEquation(threadData, _eqLst);
2782#line 2782 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2783
2784#line 2029 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2785 _varIdcsSet = _OMC_LIT18((void*)((char*)(&(_OMC_LIT_STRUCT18).header) + 3));
2786#line 2786 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2787
2788#line 2030 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2789 {
2790#line 2030 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2791 modelica_metatype _eq;
2792#line 2030 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2793 for (tmpMeta[0] = _eqIdcs; !listEmpty(tmpMeta[0])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
; tmpMeta[0]=MMC_CDR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (2)))))
)
2794#line 2030 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2795 {
2796#line 2030 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2797 _eq = MMC_CAR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (1)))))
;
2798#line 2031 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2799 _varIdcsSet = omc_AvlSetInt_addList(threadData, _varIdcsSet, arrayGet(_mIn, mmc_unbox_integer(_eq))nobox_arrayGet(threadData,_mIn,(((mmc_sint_t) (_eq)) >>
1))
);
2800#line 2800 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2801 }
2802 }
2803
2804#line 2033 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2805 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2806#line 2033 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2807 _varIdcs = omc_AvlSetInt_listKeysReverse(threadData, _varIdcsSet, tmpMeta[0]);
2808#line 2808 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2809
2810#line 2034 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2811 _varLst = omc_List_map1(threadData, _varIdcs, boxvar_BackendVariable_getVarAtIndexFirst((void*)((char*)(&(boxvar_lit_BackendVariable_getVarAtIndexFirst
).header) + 3))
, _varsIn);
2812#line 2812 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2813
2814#line 2035 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2815 _vars = omc_BackendVariable_listVar1(threadData, _varLst);
2816#line 2816 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2817
2818#line 2036 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2819 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2820#line 2036 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2821 _eqSys = omc_BackendDAEUtil_createEqSystem(threadData, _vars, _eqs, tmpMeta[0], _OMC_LIT15((void*)((char*)(&(_OMC_LIT_STRUCT15).header) + 3)), omc_BackendEquation_emptyEqns(threadData));
2822#line 2822 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2823
2824#line 2037 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2825 omc_BackendDAEUtil_getAdjacencyMatrix(threadData, _eqSys, _OMC_LIT17((void*)((char*)(&(_OMC_LIT_STRUCT17).header) + 3)), mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), _isInitial ,&_m ,&_mT);
2826#line 2826 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2827
2828#line 2044 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2829 _partitions = arrayList(omc_ResolveLoops_partitionBipartiteGraph(threadData, _m, _mT));
2830#line 2830 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2831
2832#line 2046 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2833 tmpMeta[0] = mmc_mk_box6(0, _m, _mT, _vars, _eqs, _eqIdcs, _varIdcs);
2834#line 2046 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2835 tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2836#line 2046 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2837 _cseLst3 = omc_List_fold(threadData, _partitions, (modelica_fnptr) mmc_mk_box2(0,closure1_CommonSubExpression_getCSE3,tmpMeta[0]), tmpMeta[1]);
2838#line 2838 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2839
2840#line 2047 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2841 _cseOut = listAppend(_cseLst2, listAppend(_cseLst3, _shortenPathsCSE));
2842#line 2842 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2843#line 2843 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2844 goto tmp2_done;
2845 }
2846 case 1: {
2847 /* Pattern matching succeeded */
2848#line 2050 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2849 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2850#line 2050 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2851 _cseOut = tmpMeta[0];
2852#line 2852 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2853#line 2853 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2854 goto tmp2_done;
2855 }
2856 }
2857 goto tmp2_end;
2858 tmp2_end: ;
2859 }
2860 goto goto_1;
2861 tmp2_done:
2862 (void)tmp3;
2863 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
2864 goto tmp2_done2;
2865 goto_1:;
2866 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
2867 if (++tmp3 < 2) {
2868 goto tmp2_top;
2869 }
2870 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2871 tmp2_done2:;
2872 }
2873 }
2874 ;
2875 _return: OMC_LABEL_UNUSED__attribute__((unused))
2876 return _cseOut;
2877}
2878PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_commonSubExpressionFind(threadData_t *threadData, modelica_metatype _mIn, modelica_metatype _mTIn, modelica_metatype _varsIn, modelica_metatype _eqsIn, modelica_metatype _isInitial)
2879{
2880 modelica_integer tmp1;
2881 modelica_metatype _cseOut = NULL((void*)0);
2882 tmp1 = mmc_unbox_integer(_isInitial)(((mmc_sint_t) (_isInitial)) >> 1);
2883 _cseOut = omc_CommonSubExpression_commonSubExpressionFind(threadData, _mIn, _mTIn, _varsIn, _eqsIn, tmp1);
2884 /* skip box _cseOut; list<CommonSubExpression.CommonSubExp> */
2885 return _cseOut;
2886}
2887
2888PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_commonSubExpression(threadData_t *threadData, modelica_metatype _sysIn, modelica_metatype _sharedIn, modelica_metatype *out_sharedOut)
2889{
2890 modelica_metatype _sysOut = NULL((void*)0);
2891 modelica_metatype _sharedOut = NULL((void*)0);
2892 modelica_metatype tmpMeta[5] __attribute__((unused)) = {0};
2893 MMC_SO()mmc_check_stackoverflow(threadData);
2894 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2895 // _sysOut has no default value.
2896 // _sharedOut has no default value.
2897#line 1936 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2898
2899#line 1936 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2900
2901#line 2901 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2902 { /* matchcontinue expression */
2903 volatile modelica_metatype tmp4_1;volatile modelica_metatype tmp4_2;
2904 tmp4_1 = _sysIn;
2905 tmp4_2 = _sharedIn;
2906 {
2907 modelica_metatype _functionTree = NULL((void*)0);
2908 modelica_metatype _vars = NULL((void*)0);
2909 modelica_metatype _eqs = NULL((void*)0);
2910 modelica_metatype _syst = NULL((void*)0);
2911 modelica_metatype _m = NULL((void*)0);
2912 modelica_metatype _mT = NULL((void*)0);
2913 modelica_metatype _cseLst = NULL((void*)0);
2914 modelica_boolean _isInitial;
2915 volatile mmc_switch_type tmp4;
2916 int tmp5;
2917 // _functionTree has no default value.
2918 // _vars has no default value.
2919 // _eqs has no default value.
2920 // _syst has no default value.
2921 // _m has no default value.
2922 // _mT has no default value.
2923 // _cseLst has no default value.
2924 // _isInitial has no default value.
2925 tmp4 = 0;
2926 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
2927 tmp3_top:
2928 threadData->mmc_jumper = &new_mmc_jumper;
2929 for (; tmp4 < 2; tmp4++) {
2930 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
2931 case 0: {
2932 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2933 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
2934 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 12))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(12)))))
;
2935
2936 _vars = tmpMeta[2];
2937 _eqs = tmpMeta[3];
2938 _functionTree = tmpMeta[4];
2939 /* Pattern matching succeeded */
2940#line 1954 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2941 _isInitial = omc_BackendDAEUtil_isInitializationDAE(threadData, _sharedIn);
2942#line 2942 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2943
2944#line 1955 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2945 omc_BackendDAEUtil_getAdjacencyMatrix(threadData, _sysIn, _OMC_LIT17((void*)((char*)(&(_OMC_LIT_STRUCT17).header) + 3)), mmc_mk_some(_functionTree), _isInitial ,&_m ,&_mT);
2946#line 2946 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2947
2948#line 1960 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2949 _cseLst = omc_CommonSubExpression_commonSubExpressionFind(threadData, _m, _mT, _vars, _eqs, _isInitial);
2950#line 2950 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2951
2952#line 1962 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2953 _syst = omc_CommonSubExpression_commonSubExpressionUpdate(threadData, _cseLst, _m, _mT, _sysIn);
2954#line 2954 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2955
2956#line 1963 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2957 omc_GC_free(threadData, _m);
2958#line 2958 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2959
2960#line 1964 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2961 omc_GC_free(threadData, _mT);
2962#line 2962 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2963
2964#line 1965 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2965 tmpMeta[2] = MMC_TAGPTR(mmc_alloc_words(11))((void*)((char*)(mmc_alloc_words(11)) + 3));
2966#line 1965 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2967 memcpy(MMC_UNTAGPTR(tmpMeta[2])((void*)((char*)(tmpMeta[2]) - 3)), MMC_UNTAGPTR(_syst)((void*)((char*)(_syst) - 3)), 11*sizeof(modelica_metatype));
2968#line 1965 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2969 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[2])((void*)((char*)(tmpMeta[2]) - 3)))[3] = _eqs;
2970#line 1965 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2971 _syst = tmpMeta[2];
2972#line 2972 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2973#line 1968 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2974 tmpMeta[0+0] = _syst;
2975#line 1968 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2976 tmpMeta[0+1] = _sharedIn;
2977#line 2977 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2978 goto tmp3_done;
2979 }
2980 case 1: {
2981
2982 /* Pattern matching succeeded */
2983#line 1969 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2984 tmpMeta[0+0] = _sysIn;
2985#line 1969 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
2986 tmpMeta[0+1] = _sharedIn;
2987#line 2987 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
2988 goto tmp3_done;
2989 }
2990 }
2991 goto tmp3_end;
2992 tmp3_end: ;
2993 }
2994 goto goto_2;
2995 tmp3_done:
2996 (void)tmp4;
2997 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
2998 goto tmp3_done2;
2999 goto_2:;
3000 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
3001 if (++tmp4 < 2) {
3002 goto tmp3_top;
3003 }
3004 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3005 tmp3_done2:;
3006 }
3007 }
3008 _sysOut = tmpMeta[0+0];
3009 _sharedOut = tmpMeta[0+1];
3010 _return: OMC_LABEL_UNUSED__attribute__((unused))
3011 if (out_sharedOut) { *out_sharedOut = _sharedOut; }
3012 return _sysOut;
3013}
3014
3015DLLExport
3016modelica_metatype omc_CommonSubExpression_commonSubExpressionReplacement(threadData_t *threadData, modelica_metatype _daeIn)
3017{
3018 modelica_metatype _daeOut = NULL((void*)0);
3019 MMC_SO()mmc_check_stackoverflow(threadData);
3020 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3021 // _daeOut has no default value.
3022#line 1925 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3023 _daeOut = omc_BackendDAEUtil_mapEqSystem(threadData, _daeIn, boxvar_CommonSubExpression_commonSubExpression((void*)((char*)(&(boxvar_lit_CommonSubExpression_commonSubExpression
).header) + 3))
);
3024#line 3024 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3025 _return: OMC_LABEL_UNUSED__attribute__((unused))
3026 return _daeOut;
3027}
3028
3029PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_checkOp(threadData_t *threadData, modelica_metatype _inOp)
3030{
3031 modelica_boolean _outB;
3032 modelica_boolean tmp1 = 0;
3033 MMC_SO()mmc_check_stackoverflow(threadData);
3034 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3035 // _outB has no default value.
3036#line 3036 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3037 { /* match expression */
3038 modelica_metatype tmp4_1;
3039 tmp4_1 = _inOp;
3040 {
3041 int tmp4;
3042 {
3043 switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))) >> 2
) & 255))
) {
3044 case 3: {
3045
3046 /* Pattern matching succeeded */
3047#line 1882 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3048 tmp1 = 1;
3049#line 3049 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3050 goto tmp3_done;
3051 }
3052 case 4: {
3053
3054 /* Pattern matching succeeded */
3055#line 1883 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3056 tmp1 = 1;
3057#line 3057 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3058 goto tmp3_done;
3059 }
3060 case 5: {
3061
3062 /* Pattern matching succeeded */
3063#line 1884 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3064 tmp1 = 1;
3065#line 3065 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3066 goto tmp3_done;
3067 }
3068 case 6: {
3069
3070 /* Pattern matching succeeded */
3071#line 1885 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3072 tmp1 = 1;
3073#line 3073 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3074 goto tmp3_done;
3075 }
3076 case 7: {
3077
3078 /* Pattern matching succeeded */
3079#line 1886 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3080 tmp1 = 1;
3081#line 3081 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3082 goto tmp3_done;
3083 }
3084 case 8: {
3085
3086 /* Pattern matching succeeded */
3087#line 1887 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3088 tmp1 = 1;
3089#line 3089 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3090 goto tmp3_done;
3091 }
3092 default:
3093 tmp3_default: OMC_LABEL_UNUSED__attribute__((unused)); {
3094
3095 /* Pattern matching succeeded */
3096#line 1888 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3097 tmp1 = 0;
3098#line 3098 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3099 goto tmp3_done;
3100 }
3101 }
3102 goto tmp3_end;
3103 tmp3_end: ;
3104 }
3105 goto goto_2;
3106 goto_2:;
3107 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3108 goto tmp3_done;
3109 tmp3_done:;
3110 }
3111 }
3112 _outB = tmp1;
3113 _return: OMC_LABEL_UNUSED__attribute__((unused))
3114 return _outB;
3115}
3116PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_checkOp(threadData_t *threadData, modelica_metatype _inOp)
3117{
3118 modelica_boolean _outB;
3119 modelica_metatype out_outB;
3120 _outB = omc_CommonSubExpression_checkOp(threadData, _inOp);
3121 out_outB = mmc_mk_icon(_outB);
3122 return out_outB;
3123}
3124
3125PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_isCommutative(threadData_t *threadData, modelica_metatype _inOp)
3126{
3127 modelica_boolean _outCommutative;
3128 modelica_boolean tmp1 = 0;
3129 MMC_SO()mmc_check_stackoverflow(threadData);
3130 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3131 // _outCommutative has no default value.
3132#line 3132 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3133 { /* match expression */
3134 modelica_metatype tmp4_1;
3135 tmp4_1 = _inOp;
3136 {
3137 int tmp4;
3138 {
3139 switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))) >> 2
) & 255))
) {
3140 case 5: {
3141
3142 /* Pattern matching succeeded */
3143#line 1871 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3144 tmp1 = 1;
3145#line 3145 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3146 goto tmp3_done;
3147 }
3148 case 3: {
3149
3150 /* Pattern matching succeeded */
3151#line 1872 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3152 tmp1 = 1;
3153#line 3153 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3154 goto tmp3_done;
3155 }
3156 default:
3157 tmp3_default: OMC_LABEL_UNUSED__attribute__((unused)); {
3158
3159 /* Pattern matching succeeded */
3160#line 1873 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3161 tmp1 = 0;
3162#line 3162 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3163 goto tmp3_done;
3164 }
3165 }
3166 goto tmp3_end;
3167 tmp3_end: ;
3168 }
3169 goto goto_2;
3170 goto_2:;
3171 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3172 goto tmp3_done;
3173 tmp3_done:;
3174 }
3175 }
3176 _outCommutative = tmp1;
3177 _return: OMC_LABEL_UNUSED__attribute__((unused))
3178 return _outCommutative;
3179}
3180PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_isCommutative(threadData_t *threadData, modelica_metatype _inOp)
3181{
3182 modelica_boolean _outCommutative;
3183 modelica_metatype out_outCommutative;
3184 _outCommutative = omc_CommonSubExpression_isCommutative(threadData, _inOp);
3185 out_outCommutative = mmc_mk_icon(_outCommutative);
3186 return out_outCommutative;
3187}
3188
3189PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_createStatistics__main(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inTuple, modelica_boolean *out_cont, modelica_metatype *out_outTuple)
3190{
3191 modelica_metatype _outExp = NULL((void*)0);
3192 modelica_boolean _cont;
3193 modelica_metatype _outTuple = NULL((void*)0);
3194 modelica_boolean tmp1_c1 __attribute__((unused)) = 0;
3195 modelica_metatype tmpMeta[9] __attribute__((unused)) = {0};
3196 MMC_SO()mmc_check_stackoverflow(threadData);
3197 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3198 // _outExp has no default value.
3199 // _cont has no default value.
3200 // _outTuple has no default value.
3201#line 1804 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3202
3203#line 1804 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3204
3205#line 1804 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3206
3207#line 3207 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3208 { /* matchcontinue expression */
3209 volatile modelica_metatype tmp4_1;volatile modelica_metatype tmp4_2;
3210 tmp4_1 = _inExp;
3211 tmp4_2 = _inTuple;
3212 {
3213 modelica_metatype _exp1 = NULL((void*)0);
3214 modelica_metatype _exp2 = NULL((void*)0);
3215 modelica_metatype _value = NULL((void*)0);
3216 modelica_metatype _op = NULL((void*)0);
3217 modelica_metatype _HT = NULL((void*)0);
3218 modelica_metatype _HT2 = NULL((void*)0);
3219 modelica_integer _i;
3220 modelica_integer _counter;
3221 volatile mmc_switch_type tmp4;
3222 int tmp5;
3223 // _exp1 has no default value.
3224 // _exp2 has no default value.
3225 // _value has no default value.
3226 // _op has no default value.
3227 // _HT has no default value.
3228 // _HT2 has no default value.
3229 // _i has no default value.
3230 // _counter has no default value.
3231 tmp4 = 0;
3232 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
3233 tmp3_top:
3234 threadData->mmc_jumper = &new_mmc_jumper;
3235 for (; tmp4 < 8; tmp4++) {
3236 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
3237 case 0: {
3238 modelica_integer tmp6;
3239 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,7,3)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((3 +1) <<
10) + (((7 +3) & 255) << 2)))
== 0) goto tmp3_end;
3240 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
3241 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
3242 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(4)))))
;
3243 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(1)))))
;
3244 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(2)))))
;
3245 tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(3)))))
;
3246 tmp6 = mmc_unbox_integer(tmpMeta[8])(((mmc_sint_t) (tmpMeta[8])) >> 1);
3247 _exp1 = tmpMeta[3];
3248 _op = tmpMeta[4];
3249 _exp2 = tmpMeta[5];
3250 _HT = tmpMeta[6];
3251 _HT2 = tmpMeta[7];
3252 _i = tmp6 /* pattern as ty=Integer */;
3253 tmp4 += 6; /* Pattern matching succeeded; we may skip some cases if we fail */
3254#line 1822 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3255 if(omc_CommonSubExpression_checkOp(threadData, _op))
3256#line 1822 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3257 {
3258#line 1823 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3259 if(omc_BaseHashTable_hasKey(threadData, _inExp, _HT))
3260#line 1823 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3261 {
3262#line 1824 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3263 _value = omc_BaseHashTable_get(threadData, _inExp, _HT);
3264#line 3264 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3265
3266#line 1825 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3267 _counter = ((modelica_integer) 1) + mmc_unbox_integer(omc_BaseHashTable_get(threadData, _value, _HT2))(((mmc_sint_t) (omc_BaseHashTable_get(threadData, _value, _HT2
))) >> 1)
;
3268#line 3268 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3269
3270#line 1826 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3271 tmpMeta[3] = mmc_mk_box2(0, _value, mmc_mk_integermmc_mk_icon(_counter));
3272#line 1826 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3273 omc_BaseHashTable_update(threadData, tmpMeta[3], _HT2);
3274#line 3274 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3275
3276#line 1828 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3277 if(omc_CommonSubExpression_isCommutative(threadData, _op))
3278#line 1828 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3279 {
3280#line 1829 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3281 tmpMeta[3] = mmc_mk_box4(10, &DAE_Exp_BINARY__desc, _exp2, _op, _exp1);
3282#line 1829 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3283 _value = omc_BaseHashTable_get(threadData, tmpMeta[3], _HT);
3284#line 3284 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3285
3286#line 1830 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3287 tmpMeta[3] = mmc_mk_box2(0, _value, mmc_mk_integermmc_mk_icon(_counter));
3288#line 1830 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3289 omc_BaseHashTable_update(threadData, tmpMeta[3], _HT2);
3290#line 3290 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3291 }
3292 }
3293 else
3294 {
3295#line 1833 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3296 _value = omc_CommonSubExpression_createReturnExp(threadData, omc_Expression_typeof(threadData, _inExp), _i, _OMC_LIT19((void*)((char*)(&(_OMC_LIT_STRUCT19).header) + 3)), 1 ,&_i);
3297#line 3297 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3298
3299#line 1834 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3300 _counter = ((modelica_integer) 1);
3301#line 3301 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3302
3303#line 1835 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3304 tmpMeta[3] = mmc_mk_box2(0, _inExp, _value);
3305#line 1835 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3306 _HT = omc_BaseHashTable_add(threadData, tmpMeta[3], _HT);
3307#line 3307 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3308
3309#line 1836 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3310 tmpMeta[3] = mmc_mk_box2(0, _value, mmc_mk_integermmc_mk_icon(_counter));
3311#line 1836 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3312 _HT2 = omc_BaseHashTable_add(threadData, tmpMeta[3], _HT2);
3313#line 3313 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3314
3315#line 1837 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3316 if(omc_CommonSubExpression_isCommutative(threadData, _op))
3317#line 1837 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3318 {
3319#line 1838 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3320 tmpMeta[3] = mmc_mk_box4(10, &DAE_Exp_BINARY__desc, _exp2, _op, _exp1);
3321#line 1838 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3322 tmpMeta[4] = mmc_mk_box2(0, tmpMeta[3], _value);
3323#line 1838 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3324 _HT = omc_BaseHashTable_add(threadData, tmpMeta[4], _HT);
3325#line 3325 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3326 }
3327 }
3328
3329#line 1842 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3330 if(omc_Flags_isSet(threadData, _OMC_LIT27((void*)((char*)(&(_OMC_LIT_STRUCT27).header) + 3))))
3331#line 1842 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3332 {
3333#line 1843 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3334 tmpMeta[3] = stringAppend(_OMC_LIT20((void*)((char*)(&(_OMC_LIT_STRUCT20).header) + 3)),omc_ExpressionDump_printExpStr(threadData, _inExp));
3335#line 1843 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3336 tmpMeta[4] = stringAppend(tmpMeta[3],_OMC_LIT21((void*)((char*)(&(_OMC_LIT_STRUCT21).header) + 3)));
3337#line 1843 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3338 tmpMeta[5] = stringAppend(tmpMeta[4],intString(_counter));
3339#line 1843 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3340 tmpMeta[6] = stringAppend(tmpMeta[5],_OMC_LIT22((void*)((char*)(&(_OMC_LIT_STRUCT22).header) + 3)));
3341#line 1843 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3342 tmpMeta[7] = stringAppend(tmpMeta[6],omc_ExpressionDump_printExpStr(threadData, _value));
3343#line 1843 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3344 tmpMeta[8] = stringAppend(tmpMeta[7],_OMC_LIT23((void*)((char*)(&(_OMC_LIT_STRUCT23).header) + 3)));
3345#line 1843 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3346 fputs(MMC_STRINGDATA(tmpMeta[8])(((struct mmc_string*)((void*)((char*)(tmpMeta[8]) - 3)))->
data)
,stdoutstdout);
3347#line 3347 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3348 }
3349 }
3350#line 1846 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3351 tmpMeta[3] = mmc_mk_box3(0, _HT, _HT2, mmc_mk_integermmc_mk_icon(_i));
3352#line 1846 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3353 tmpMeta[0+0] = _inExp;
3354#line 1846 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3355 tmp1_c1 = 1;
3356#line 1846 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3357 tmpMeta[0+2] = tmpMeta[3];
3358#line 3358 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3359 goto tmp3_done;
3360 }
3361 case 1: {
3362 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,12,3)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((3 +1) <<
10) + (((12 +3) & 255) << 2)))
== 0) goto tmp3_end;
3363
3364 tmp4 += 5; /* Pattern matching succeeded; we may skip some cases if we fail */
3365#line 1850 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3366 tmpMeta[0+0] = _inExp;
3367#line 1850 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3368 tmp1_c1 = 0;
3369#line 1850 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3370 tmpMeta[0+2] = _inTuple;
3371#line 3371 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3372 goto tmp3_done;
3373 }
3374 case 2: {
3375 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,13,3)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((3 +1) <<
10) + (((13 +3) & 255) << 2)))
== 0) goto tmp3_end;
3376 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
3377 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],1,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3)))==(((1 +1)
<< 10) + (((1 +3) & 255) << 2)))
== 0) goto tmp3_end;
3378 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (2)))))
;
3379 if (3 != MMC_STRLEN(tmpMeta[4])(((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3)))) >>
(3)) - 8))
|| strcmp(MMC_STRINGDATA(_OMC_LIT28)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT28).header) + 3))) - 3)))->data)
, MMC_STRINGDATA(tmpMeta[4])(((struct mmc_string*)((void*)((char*)(tmpMeta[4]) - 3)))->
data)
) != 0) goto tmp3_end;
3380
3381 tmp4 += 4; /* Pattern matching succeeded; we may skip some cases if we fail */
3382#line 1852 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3383 tmpMeta[0+0] = _inExp;
3384#line 1852 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3385 tmp1_c1 = 0;
3386#line 1852 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3387 tmpMeta[0+2] = _inTuple;
3388#line 3388 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3389 goto tmp3_done;
3390 }
3391 case 3: {
3392 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,13,3)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((3 +1) <<
10) + (((13 +3) & 255) << 2)))
== 0) goto tmp3_end;
3393 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
3394 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],1,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3)))==(((1 +1)
<< 10) + (((1 +3) & 255) << 2)))
== 0) goto tmp3_end;
3395 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (2)))))
;
3396 if (6 != MMC_STRLEN(tmpMeta[4])(((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3)))) >>
(3)) - 8))
|| strcmp(MMC_STRINGDATA(_OMC_LIT29)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT29).header) + 3))) - 3)))->data)
, MMC_STRINGDATA(tmpMeta[4])(((struct mmc_string*)((void*)((char*)(tmpMeta[4]) - 3)))->
data)
) != 0) goto tmp3_end;
3397
3398 tmp4 += 3; /* Pattern matching succeeded; we may skip some cases if we fail */
3399#line 1854 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3400 tmpMeta[0+0] = _inExp;
3401#line 1854 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3402 tmp1_c1 = 0;
3403#line 1854 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3404 tmpMeta[0+2] = _inTuple;
3405#line 3405 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3406 goto tmp3_done;
3407 }
3408 case 4: {
3409 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,13,3)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((3 +1) <<
10) + (((13 +3) & 255) << 2)))
== 0) goto tmp3_end;
3410 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
3411 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],1,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3)))==(((1 +1)
<< 10) + (((1 +3) & 255) << 2)))
== 0) goto tmp3_end;
3412 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (2)))))
;
3413 if (7 != MMC_STRLEN(tmpMeta[4])(((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3)))) >>
(3)) - 8))
|| strcmp(MMC_STRINGDATA(_OMC_LIT30)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT30).header) + 3))) - 3)))->data)
, MMC_STRINGDATA(tmpMeta[4])(((struct mmc_string*)((void*)((char*)(tmpMeta[4]) - 3)))->
data)
) != 0) goto tmp3_end;
3414
3415 tmp4 += 2; /* Pattern matching succeeded; we may skip some cases if we fail */
3416#line 1856 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3417 tmpMeta[0+0] = _inExp;
3418#line 1856 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3419 tmp1_c1 = 0;
3420#line 1856 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3421 tmpMeta[0+2] = _inTuple;
3422#line 3422 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3423 goto tmp3_done;
3424 }
3425 case 5: {
3426 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,13,3)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((3 +1) <<
10) + (((13 +3) & 255) << 2)))
== 0) goto tmp3_end;
3427 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
3428 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],1,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3)))==(((1 +1)
<< 10) + (((1 +3) & 255) << 2)))
== 0) goto tmp3_end;
3429 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (2)))))
;
3430 if (10 != MMC_STRLEN(tmpMeta[4])(((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3)))) >>
(3)) - 8))
|| strcmp(MMC_STRINGDATA(_OMC_LIT31)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT31).header) + 3))) - 3)))->data)
, MMC_STRINGDATA(tmpMeta[4])(((struct mmc_string*)((void*)((char*)(tmpMeta[4]) - 3)))->
data)
) != 0) goto tmp3_end;
3431
3432 tmp4 += 1; /* Pattern matching succeeded; we may skip some cases if we fail */
3433#line 1858 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3434 tmpMeta[0+0] = _inExp;
3435#line 1858 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3436 tmp1_c1 = 0;
3437#line 1858 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3438 tmpMeta[0+2] = _inTuple;
3439#line 3439 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3440 goto tmp3_done;
3441 }
3442 case 6: {
3443 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,13,3)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((3 +1) <<
10) + (((13 +3) & 255) << 2)))
== 0) goto tmp3_end;
3444 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
3445 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],1,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3)))==(((1 +1)
<< 10) + (((1 +3) & 255) << 2)))
== 0) goto tmp3_end;
3446 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (2)))))
;
3447 if (8 != MMC_STRLEN(tmpMeta[4])(((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3)))) >>
(3)) - 8))
|| strcmp(MMC_STRINGDATA(_OMC_LIT32)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT32).header) + 3))) - 3)))->data)
, MMC_STRINGDATA(tmpMeta[4])(((struct mmc_string*)((void*)((char*)(tmpMeta[4]) - 3)))->
data)
) != 0) goto tmp3_end;
3448
3449 /* Pattern matching succeeded */
3450#line 1860 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3451 tmpMeta[0+0] = _inExp;
3452#line 1860 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3453 tmp1_c1 = 0;
3454#line 1860 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3455 tmpMeta[0+2] = _inTuple;
3456#line 3456 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3457 goto tmp3_done;
3458 }
3459 case 7: {
3460
3461 /* Pattern matching succeeded */
3462#line 1862 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3463 tmpMeta[0+0] = _inExp;
3464#line 1862 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3465 tmp1_c1 = 1;
3466#line 1862 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3467 tmpMeta[0+2] = _inTuple;
3468#line 3468 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3469 goto tmp3_done;
3470 }
3471 }
3472 goto tmp3_end;
3473 tmp3_end: ;
3474 }
3475 goto goto_2;
3476 tmp3_done:
3477 (void)tmp4;
3478 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
3479 goto tmp3_done2;
3480 goto_2:;
3481 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
3482 if (++tmp4 < 8) {
3483 goto tmp3_top;
3484 }
3485 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3486 tmp3_done2:;
3487 }
3488 }
3489 _outExp = tmpMeta[0+0];
3490 _cont = tmp1_c1;
3491 _outTuple = tmpMeta[0+2];
3492 _return: OMC_LABEL_UNUSED__attribute__((unused))
3493 if (out_cont) { *out_cont = _cont; }
3494 if (out_outTuple) { *out_outTuple = _outTuple; }
3495 return _outExp;
3496}
3497PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_createStatistics__main(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inTuple, modelica_metatype *out_cont, modelica_metatype *out_outTuple)
3498{
3499 modelica_boolean _cont;
3500 modelica_metatype _outExp = NULL((void*)0);
3501 _outExp = omc_CommonSubExpression_createStatistics__main(threadData, _inExp, _inTuple, &_cont, out_outTuple);
3502 /* skip box _outExp; DAE.Exp */
3503 if (out_cont) { *out_cont = mmc_mk_icon(_cont); }
3504 /* skip box _outTuple; tuple<tuple<array<list<tuple<DAE.Exp, #Integer>>>, tuple<#Integer, #Integer, array<Option<tuple<DAE.Exp, DAE.Exp>>>>, #Integer, tuple<.HashTableExpToExp.FuncHashCref<function>(DAE.Exp cr, #Integer mod) => #Integer, .HashTableExpToExp.FuncCrefEqual<function>(DAE.Exp cr1, DAE.Exp cr2) => #Boolean, .HashTableExpToExp.FuncCrefStr<function>(DAE.Exp cr) => String, .HashTableExpToExp.FuncExpStr<function>(DAE.Exp exp) => String>>, tuple<array<list<tuple<DAE.Exp, #Integer>>>, tuple<#Integer, #Integer, array<Option<tuple<DAE.Exp, #Integer>>>>, #Integer, tuple<.HashTableExpToIndex.FuncHashCref<function>(DAE.Exp cr, #Integer mod) => #Integer, .HashTableExpToIndex.FuncCrefEqual<function>(DAE.Exp cr1, DAE.Exp cr2) => #Boolean, .HashTableExpToIndex.FuncCrefStr<function>(DAE.Exp cr) => String, .HashTableExpToIndex.FuncExpStr<function>(#Integer exp) => String>>, #Integer> */
3505 return _outExp;
3506}
3507
3508PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_createStatistics1(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inTuple, modelica_metatype *out_outTuple)
3509{
3510 modelica_metatype _outExp = NULL((void*)0);
3511 modelica_metatype _outTuple = NULL((void*)0);
3512 MMC_SO()mmc_check_stackoverflow(threadData);
3513 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3514 // _outExp has no default value.
3515 // _outTuple has no default value.
3516#line 1794 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3517 _outExp = omc_Expression_traverseExpTopDown(threadData, _inExp, boxvar_CommonSubExpression_createStatistics__main((void*)((char*)(&(boxvar_lit_CommonSubExpression_createStatistics__main
).header) + 3))
, _inTuple ,&_outTuple);
3518#line 3518 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3519 _return: OMC_LABEL_UNUSED__attribute__((unused))
3520 if (out_outTuple) { *out_outTuple = _outTuple; }
3521 return _outExp;
3522}
3523
3524PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_createStatistics(threadData_t *threadData, modelica_metatype _inEq, modelica_metatype _inTuple, modelica_metatype *out_outTuple)
3525{
3526 modelica_metatype _outEq = NULL((void*)0);
3527 modelica_metatype _outTuple = NULL((void*)0);
3528 modelica_metatype tmpMeta[4] __attribute__((unused)) = {0};
3529 MMC_SO()mmc_check_stackoverflow(threadData);
3530 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3531 // _outEq has no default value.
3532 // _outTuple has no default value.
3533#line 1768 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3534
3535#line 1768 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3536
3537#line 3537 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3538 { /* match expression */
3539 modelica_metatype tmp4_1;
3540 tmp4_1 = _inEq;
3541 {
3542 int tmp4;
3543 {
3544 switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))) >> 2
) & 255))
) {
3545 case 7: {
3546
3547 /* Pattern matching succeeded */
3548#line 1773 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3549 tmpMeta[0+0] = _inEq;
3550#line 1773 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3551 tmpMeta[0+1] = _inTuple;
3552#line 3552 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3553 goto tmp3_done;
3554 }
3555 case 8: {
3556
3557 /* Pattern matching succeeded */
3558#line 1774 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3559 tmpMeta[0+0] = _inEq;
3560#line 1774 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3561 tmpMeta[0+1] = _inTuple;
3562#line 3562 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3563 goto tmp3_done;
3564 }
3565 case 10: {
3566
3567 /* Pattern matching succeeded */
3568#line 1777 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3569 tmpMeta[0+0] = _inEq;
3570#line 1777 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3571 tmpMeta[0+1] = _inTuple;
3572#line 3572 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3573 goto tmp3_done;
3574 }
3575 default:
3576 tmp3_default: OMC_LABEL_UNUSED__attribute__((unused)); {
3577
3578 /* Pattern matching succeeded */
3579#line 1780 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3580 if(omc_Flags_isSet(threadData, _OMC_LIT27((void*)((char*)(&(_OMC_LIT_STRUCT27).header) + 3))))
3581#line 1780 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3582 {
3583#line 1781 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3584 tmpMeta[2] = stringAppend(_OMC_LIT33((void*)((char*)(&(_OMC_LIT_STRUCT33).header) + 3)),omc_BackendDump_equationString(threadData, _inEq));
3585#line 1781 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3586 tmpMeta[3] = stringAppend(tmpMeta[2],_OMC_LIT34((void*)((char*)(&(_OMC_LIT_STRUCT34).header) + 3)));
3587#line 1781 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3588 fputs(MMC_STRINGDATA(tmpMeta[3])(((struct mmc_string*)((void*)((char*)(tmpMeta[3]) - 3)))->
data)
,stdoutstdout);
3589#line 3589 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3590 }
3591#line 1783 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3592 tmpMeta[0+0] = omc_BackendEquation_traverseExpsOfEquation(threadData, _inEq, boxvar_CommonSubExpression_createStatistics1((void*)((char*)(&(boxvar_lit_CommonSubExpression_createStatistics1
).header) + 3))
, _inTuple, &tmpMeta[0+1]);
3593#line 3593 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3594 goto tmp3_done;
3595 }
3596 }
3597 goto tmp3_end;
3598 tmp3_end: ;
3599 }
3600 goto goto_2;
3601 goto_2:;
3602 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3603 goto tmp3_done;
3604 tmp3_done:;
3605 }
3606 }
3607 _outEq = tmpMeta[0+0];
3608 _outTuple = tmpMeta[0+1];
3609 _return: OMC_LABEL_UNUSED__attribute__((unused))
3610 if (out_outTuple) { *out_outTuple = _outTuple; }
3611 return _outEq;
3612}
3613
3614PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_substituteCSE__main(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inTuple, modelica_boolean *out_cont, modelica_metatype *out_outTuple)
3615{
3616 modelica_metatype _outExp = NULL((void*)0);
3617 modelica_boolean _cont;
3618 modelica_metatype _outTuple = NULL((void*)0);
3619 modelica_boolean tmp1_c1 __attribute__((unused)) = 0;
3620 modelica_metatype tmpMeta[10] __attribute__((unused)) = {0};
3621 MMC_SO()mmc_check_stackoverflow(threadData);
3622 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3623 // _outExp has no default value.
3624 // _cont has no default value.
3625 // _outTuple has no default value.
3626#line 1725 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3627
3628#line 1725 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3629
3630#line 1725 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3631
3632#line 3632 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3633 { /* matchcontinue expression */
3634 volatile modelica_metatype tmp4_1;volatile modelica_metatype tmp4_2;
3635 tmp4_1 = _inExp;
3636 tmp4_2 = _inTuple;
3637 {
3638 modelica_metatype _value = NULL((void*)0);
3639 modelica_metatype _HT = NULL((void*)0);
3640 modelica_metatype _HT2 = NULL((void*)0);
3641 modelica_metatype _HT3 = NULL((void*)0);
3642 modelica_metatype _eqLst = NULL((void*)0);
3643 modelica_metatype _varLst = NULL((void*)0);
3644 modelica_integer _counter;
3645 modelica_metatype _eq = NULL((void*)0);
3646 modelica_metatype _source = NULL((void*)0);
3647 volatile mmc_switch_type tmp4;
3648 int tmp5;
3649 // _value has no default value.
3650 // _HT has no default value.
3651 // _HT2 has no default value.
3652 // _HT3 has no default value.
3653 // _eqLst has no default value.
3654 // _varLst has no default value.
3655 // _counter has no default value.
3656 // _eq has no default value.
3657 // _source has no default value.
3658 tmp4 = 0;
3659 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
3660 tmp3_top:
3661 threadData->mmc_jumper = &new_mmc_jumper;
3662 for (; tmp4 < 2; tmp4++) {
3663 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
3664 case 0: {
3665 modelica_boolean tmp6;
3666 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,7,3)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((3 +1) <<
10) + (((7 +3) & 255) << 2)))
== 0) goto tmp3_end;
3667 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(1)))))
;
3668 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (1)))))
;
3669 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (2)))))
;
3670 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (3)))))
;
3671 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (4)))))
;
3672 tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (5)))))
;
3673 tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(2)))))
;
3674 _HT = tmpMeta[4];
3675 _HT2 = tmpMeta[5];
3676 _HT3 = tmpMeta[6];
3677 _eqLst = tmpMeta[7];
3678 _varLst = tmpMeta[8];
3679 _source = tmpMeta[9];
3680 /* Pattern matching succeeded */
3681#line 1742 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3682 _value = omc_BaseHashTable_get(threadData, _inExp, _HT);
3683#line 3683 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3684
3685#line 1743 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3686 _counter = mmc_unbox_integer(omc_BaseHashTable_get(threadData, _value, _HT2))(((mmc_sint_t) (omc_BaseHashTable_get(threadData, _value, _HT2
))) >> 1)
;
3687#line 3687 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3688
3689#line 1744 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3690 /* Pattern-matching assignment */
3691#line 1744 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3692 tmp6 = (_counter > ((modelica_integer) 1));
3693#line 1744 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3694 if (1 != tmp6) goto goto_2;
3695#line 3695 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3696
3697#line 1746 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3698 if(omc_Flags_isSet(threadData, _OMC_LIT27((void*)((char*)(&(_OMC_LIT_STRUCT27).header) + 3))))
3699#line 1746 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3700 {
3701#line 1747 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3702 tmpMeta[3] = stringAppend(_OMC_LIT35((void*)((char*)(&(_OMC_LIT_STRUCT35).header) + 3)),omc_ExpressionDump_printExpStr(threadData, _inExp));
3703#line 1747 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3704 tmpMeta[4] = stringAppend(tmpMeta[3],_OMC_LIT21((void*)((char*)(&(_OMC_LIT_STRUCT21).header) + 3)));
3705#line 1747 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3706 tmpMeta[5] = stringAppend(tmpMeta[4],intString(_counter));
3707#line 1747 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3708 tmpMeta[6] = stringAppend(tmpMeta[5],_OMC_LIT22((void*)((char*)(&(_OMC_LIT_STRUCT22).header) + 3)));
3709#line 1747 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3710 tmpMeta[7] = stringAppend(tmpMeta[6],omc_ExpressionDump_printExpStr(threadData, _value));
3711#line 1747 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3712 tmpMeta[8] = stringAppend(tmpMeta[7],_OMC_LIT23((void*)((char*)(&(_OMC_LIT_STRUCT23).header) + 3)));
3713#line 1747 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3714 fputs(MMC_STRINGDATA(tmpMeta[8])(((struct mmc_string*)((void*)((char*)(tmpMeta[8]) - 3)))->
data)
,stdoutstdout);
3715#line 3715 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3716 }
3717
3718#line 1750 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3719 if((!omc_BaseHashTable_hasKey(threadData, _value, _HT3)))
3720#line 1750 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3721 {
3722#line 1751 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3723 tmpMeta[3] = mmc_mk_box2(0, _value, mmc_mk_integermmc_mk_icon(((modelica_integer) 1)));
3724#line 1751 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3725 _HT3 = omc_BaseHashTable_add(threadData, tmpMeta[3], _HT3);
3726#line 3726 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3727
3728#line 1752 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3729 _varLst = omc_CommonSubExpression_createVarsForExp__onlyCSECrefs(threadData, _value, _varLst);
3730#line 3730 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3731
3732#line 1753 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3733 _eq = omc_BackendEquation_generateEquation(threadData, _value, _inExp, _source, _OMC_LIT37((void*)((char*)(&(_OMC_LIT_STRUCT37).header) + 3)));
3734#line 3734 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3735
3736#line 1754 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3737 tmpMeta[3] = mmc_mk_cons(_eq, _eqLst);
3738#line 1754 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3739 _eqLst = tmpMeta[3];
3740#line 3740 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3741 }
3742#line 1756 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3743 tmpMeta[3] = mmc_mk_box5(0, _HT, _HT2, _HT3, _eqLst, _varLst);
3744#line 1756 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3745 tmpMeta[4] = mmc_mk_box2(0, tmpMeta[3], _source);
3746#line 1756 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3747 tmpMeta[0+0] = _value;
3748#line 1756 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3749 tmp1_c1 = 1;
3750#line 1756 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3751 tmpMeta[0+2] = tmpMeta[4];
3752#line 3752 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3753 goto tmp3_done;
3754 }
3755 case 1: {
3756
3757 /* Pattern matching succeeded */
3758#line 1758 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3759 tmpMeta[0+0] = _inExp;
3760#line 1758 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3761 tmp1_c1 = 1;
3762#line 1758 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3763 tmpMeta[0+2] = _inTuple;
3764#line 3764 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3765 goto tmp3_done;
3766 }
3767 }
3768 goto tmp3_end;
3769 tmp3_end: ;
3770 }
3771 goto goto_2;
3772 tmp3_done:
3773 (void)tmp4;
3774 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
3775 goto tmp3_done2;
3776 goto_2:;
3777 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
3778 if (++tmp4 < 2) {
3779 goto tmp3_top;
3780 }
3781 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3782 tmp3_done2:;
3783 }
3784 }
3785 _outExp = tmpMeta[0+0];
3786 _cont = tmp1_c1;
3787 _outTuple = tmpMeta[0+2];
3788 _return: OMC_LABEL_UNUSED__attribute__((unused))
3789 if (out_cont) { *out_cont = _cont; }
3790 if (out_outTuple) { *out_outTuple = _outTuple; }
3791 return _outExp;
3792}
3793PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_substituteCSE__main(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inTuple, modelica_metatype *out_cont, modelica_metatype *out_outTuple)
3794{
3795 modelica_boolean _cont;
3796 modelica_metatype _outExp = NULL((void*)0);
3797 _outExp = omc_CommonSubExpression_substituteCSE__main(threadData, _inExp, _inTuple, &_cont, out_outTuple);
3798 /* skip box _outExp; DAE.Exp */
3799 if (out_cont) { *out_cont = mmc_mk_icon(_cont); }
3800 /* skip box _outTuple; tuple<tuple<tuple<array<list<tuple<DAE.Exp, #Integer>>>, tuple<#Integer, #Integer, array<Option<tuple<DAE.Exp, DAE.Exp>>>>, #Integer, tuple<.HashTableExpToExp.FuncHashCref<function>(DAE.Exp cr, #Integer mod) => #Integer, .HashTableExpToExp.FuncCrefEqual<function>(DAE.Exp cr1, DAE.Exp cr2) => #Boolean, .HashTableExpToExp.FuncCrefStr<function>(DAE.Exp cr) => String, .HashTableExpToExp.FuncExpStr<function>(DAE.Exp exp) => String>>, tuple<array<list<tuple<DAE.Exp, #Integer>>>, tuple<#Integer, #Integer, array<Option<tuple<DAE.Exp, #Integer>>>>, #Integer, tuple<.HashTableExpToIndex.FuncHashCref<function>(DAE.Exp cr, #Integer mod) => #Integer, .HashTableExpToIndex.FuncCrefEqual<function>(DAE.Exp cr1, DAE.Exp cr2) => #Boolean, .HashTableExpToIndex.FuncCrefStr<function>(DAE.Exp cr) => String, .HashTableExpToIndex.FuncExpStr<function>(#Integer exp) => String>>, tuple<array<list<tuple<DAE.Exp, #Integer>>>, tuple<#Integer, #Integer, array<Option<tuple<DAE.Exp, #Integer>>>>, #Integer, tuple<.HashTableExpToIndex.FuncHashCref<function>(DAE.Exp cr, #Integer mod) => #Integer, .HashTableExpToIndex.FuncCrefEqual<function>(DAE.Exp cr1, DAE.Exp cr2) => #Boolean, .HashTableExpToIndex.FuncCrefStr<function>(DAE.Exp cr) => String, .HashTableExpToIndex.FuncExpStr<function>(#Integer exp) => String>>, list<BackendDAE.Equation>, list<BackendDAE.Var>>, DAE.ElementSource> */
3801 return _outExp;
3802}
3803
3804PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_substituteCSE1(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inTuple, modelica_metatype *out_outTuple)
3805{
3806 modelica_metatype _outExp = NULL((void*)0);
3807 modelica_metatype _outTuple = NULL((void*)0);
3808 MMC_SO()mmc_check_stackoverflow(threadData);
3809 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3810 // _outExp has no default value.
3811 // _outTuple has no default value.
3812#line 1715 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3813 _outExp = omc_Expression_traverseExpTopDown(threadData, _inExp, boxvar_CommonSubExpression_substituteCSE__main((void*)((char*)(&(boxvar_lit_CommonSubExpression_substituteCSE__main
).header) + 3))
, _inTuple ,&_outTuple);
3814#line 3814 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3815 _return: OMC_LABEL_UNUSED__attribute__((unused))
3816 if (out_outTuple) { *out_outTuple = _outTuple; }
3817 return _outExp;
3818}
3819
3820PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_substituteCSE(threadData_t *threadData, modelica_metatype _inEq, modelica_metatype _inTuple, modelica_metatype *out_outTuple)
3821{
3822 modelica_metatype _outEq = NULL((void*)0);
3823 modelica_metatype _outTuple = NULL((void*)0);
3824 modelica_metatype tmpMeta[6] __attribute__((unused)) = {0};
3825 MMC_SO()mmc_check_stackoverflow(threadData);
3826 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3827 // _outEq has no default value.
3828 // _outTuple has no default value.
3829#line 1689 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3830
3831#line 1689 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3832
3833#line 3833 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3834 { /* match expression */
3835 modelica_metatype tmp4_1;
3836 tmp4_1 = _inEq;
3837 {
3838 modelica_metatype _eq = NULL((void*)0);
3839 modelica_metatype _tpl = NULL((void*)0);
3840 int tmp4;
3841 // _eq has no default value.
3842 // _tpl has no default value.
3843 {
3844 switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))) >> 2
) & 255))
) {
3845 case 7: {
3846
3847 /* Pattern matching succeeded */
3848#line 1694 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3849 tmpMeta[0+0] = _inEq;
3850#line 1694 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3851 tmpMeta[0+1] = _inTuple;
3852#line 3852 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3853 goto tmp3_done;
3854 }
3855 case 8: {
3856
3857 /* Pattern matching succeeded */
3858#line 1695 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3859 tmpMeta[0+0] = _inEq;
3860#line 1695 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3861 tmpMeta[0+1] = _inTuple;
3862#line 3862 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3863 goto tmp3_done;
3864 }
3865 case 10: {
3866
3867 /* Pattern matching succeeded */
3868#line 1698 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3869 tmpMeta[0+0] = _inEq;
3870#line 1698 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3871 tmpMeta[0+1] = _inTuple;
3872#line 3872 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3873 goto tmp3_done;
3874 }
3875 default:
3876 tmp3_default: OMC_LABEL_UNUSED__attribute__((unused)); {
3877
3878 /* Pattern matching succeeded */
3879#line 1701 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3880 if(omc_Flags_isSet(threadData, _OMC_LIT27((void*)((char*)(&(_OMC_LIT_STRUCT27).header) + 3))))
3881#line 1701 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3882 {
3883#line 1702 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3884 tmpMeta[2] = stringAppend(_OMC_LIT33((void*)((char*)(&(_OMC_LIT_STRUCT33).header) + 3)),omc_BackendDump_equationString(threadData, _inEq));
3885#line 1702 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3886 tmpMeta[3] = stringAppend(tmpMeta[2],_OMC_LIT34((void*)((char*)(&(_OMC_LIT_STRUCT34).header) + 3)));
3887#line 1702 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3888 fputs(MMC_STRINGDATA(tmpMeta[3])(((struct mmc_string*)((void*)((char*)(tmpMeta[3]) - 3)))->
data)
,stdoutstdout);
3889#line 3889 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3890 }
3891
3892#line 1704 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3893 /* Pattern-matching tuple assignment */
3894#line 1704 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3895 tmpMeta[4] = mmc_mk_box2(0, _inTuple, omc_BackendEquation_equationSource(threadData, _inEq));
3896#line 1704 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3897 tmpMeta[5] = omc_BackendEquation_traverseExpsOfEquation(threadData, _inEq, boxvar_CommonSubExpression_substituteCSE1((void*)((char*)(&(boxvar_lit_CommonSubExpression_substituteCSE1
).header) + 3))
, tmpMeta[4], &tmpMeta[2]);
3898#line 1704 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3899 _eq = tmpMeta[5];
3900#line 1704 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3901 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (1)))))
;
3902#line 1704 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3903 _tpl = tmpMeta[3];
3904#line 3904 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3905#line 1705 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3906 tmpMeta[0+0] = _eq;
3907#line 1705 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3908 tmpMeta[0+1] = _tpl;
3909#line 3909 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3910 goto tmp3_done;
3911 }
3912 }
3913 goto tmp3_end;
3914 tmp3_end: ;
3915 }
3916 goto goto_2;
3917 goto_2:;
3918 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3919 goto tmp3_done;
3920 tmp3_done:;
3921 }
3922 }
3923 _outEq = tmpMeta[0+0];
3924 _outTuple = tmpMeta[0+1];
3925 _return: OMC_LABEL_UNUSED__attribute__((unused))
3926 if (out_outTuple) { *out_outTuple = _outTuple; }
3927 return _outEq;
3928}
3929
3930PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_CSE1(threadData_t *threadData, modelica_metatype _inSystem, modelica_metatype _inShared, modelica_integer _inIndex, modelica_metatype *out_outShared, modelica_integer *out_outIndex)
3931{
3932 modelica_metatype _outSystem = NULL((void*)0);
3933 modelica_metatype _outShared = NULL((void*)0);
3934 modelica_integer _outIndex;
3935 modelica_integer tmp1_c1 __attribute__((unused)) = 0;
3936 modelica_metatype tmpMeta[11] __attribute__((unused)) = {0};
3937 MMC_SO()mmc_check_stackoverflow(threadData);
3938 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3939 // _outSystem has no default value.
3940 _outShared = _inShared;
3941 // _outIndex has no default value.
3942#line 1639 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3943
3944#line 1639 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3945
3946#line 3946 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3947 { /* matchcontinue expression */
3948 volatile modelica_metatype tmp4_1;
3949 tmp4_1 = _inSystem;
3950 {
3951 modelica_metatype _orderedVars = NULL((void*)0);
3952 modelica_metatype _orderedEqs = NULL((void*)0);
3953 modelica_metatype _syst = NULL((void*)0);
3954 modelica_metatype _varList = NULL((void*)0);
3955 modelica_metatype _eqList = NULL((void*)0);
3956 modelica_metatype _HT = NULL((void*)0);
3957 modelica_metatype _HT2 = NULL((void*)0);
3958 modelica_metatype _HT3 = NULL((void*)0);
3959 modelica_integer _index;
3960 volatile mmc_switch_type tmp4;
3961 int tmp5;
3962 // _orderedVars has no default value.
3963 // _orderedEqs has no default value.
3964 // _syst has no default value.
3965 // _varList has no default value.
3966 // _eqList has no default value.
3967 // _HT has no default value.
3968 // _HT2 has no default value.
3969 // _HT3 has no default value.
3970 _index = _inIndex;
3971 tmp4 = 0;
3972 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
3973 tmp3_top:
3974 threadData->mmc_jumper = &new_mmc_jumper;
3975 for (; tmp4 < 2; tmp4++) {
3976 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
3977 case 0: {
3978 modelica_integer tmp6;
3979 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
3980 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
3981
3982 _syst = tmp4_1;
3983 _orderedVars = tmpMeta[2];
3984 _orderedEqs = tmpMeta[3];
3985 /* Pattern matching succeeded */
3986#line 1655 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3987 _HT = omc_HashTableExpToExp_emptyHashTableSized(threadData, ((modelica_integer) 49999));
3988#line 3988 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3989
3990#line 1656 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3991 _HT2 = omc_HashTableExpToIndex_emptyHashTableSized(threadData, ((modelica_integer) 49999));
3992#line 3992 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3993
3994#line 1657 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3995 _HT3 = omc_HashTableExpToIndex_emptyHashTableSized(threadData, ((modelica_integer) 49999));
3996#line 3996 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
3997
3998#line 1658 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
3999 if(omc_Flags_isSet(threadData, _OMC_LIT27((void*)((char*)(&(_OMC_LIT_STRUCT27).header) + 3))))
4000#line 1658 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4001 {
4002#line 1659 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4003 fputs(MMC_STRINGDATA(_OMC_LIT38)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT38).header) + 3))) - 3)))->data)
,stdoutstdout);
4004#line 4004 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4005 }
4006
4007#line 1661 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4008 /* Pattern-matching assignment */
4009#line 1661 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4010 tmpMeta[2] = mmc_mk_box3(0, _HT, _HT2, mmc_mk_integermmc_mk_icon(_index));
4011#line 1661 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4012 tmpMeta[3] = omc_BackendEquation_traverseEquationArray(threadData, _orderedEqs, boxvar_CommonSubExpression_createStatistics((void*)((char*)(&(boxvar_lit_CommonSubExpression_createStatistics
).header) + 3))
, tmpMeta[2]);
4013#line 1661 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4014 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (1)))))
;
4015#line 1661 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4016 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (2)))))
;
4017#line 1661 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4018 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (3)))))
;
4019#line 1661 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4020 tmp6 = mmc_unbox_integer(tmpMeta[6])(((mmc_sint_t) (tmpMeta[6])) >> 1);
4021#line 1661 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4022 _HT = tmpMeta[4];
4023#line 1661 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4024 _HT2 = tmpMeta[5];
4025#line 1661 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4026 _index = tmp6 /* pattern as ty=Integer */;
4027#line 4027 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4028
4029#line 1664 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4030 if(omc_Flags_isSet(threadData, _OMC_LIT27((void*)((char*)(&(_OMC_LIT_STRUCT27).header) + 3))))
4031#line 1664 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4032 {
4033#line 1665 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4034 fputs(MMC_STRINGDATA(_OMC_LIT39)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT39).header) + 3))) - 3)))->data)
,stdoutstdout);
4035#line 4035 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4036 }
4037
4038#line 1667 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4039 /* Pattern-matching tuple assignment */
4040#line 1667 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4041 tmpMeta[7] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
4042#line 1667 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4043 tmpMeta[8] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
4044#line 1667 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4045 tmpMeta[9] = mmc_mk_box5(0, _HT, _HT2, _HT3, tmpMeta[7], tmpMeta[8]);
4046#line 1667 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4047 tmpMeta[10] = omc_BackendEquation_traverseEquationArray__WithUpdate(threadData, _orderedEqs, boxvar_CommonSubExpression_substituteCSE((void*)((char*)(&(boxvar_lit_CommonSubExpression_substituteCSE
).header) + 3))
, tmpMeta[9], &tmpMeta[2]);
4048#line 1667 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4049 _orderedEqs = tmpMeta[10];
4050#line 1667 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4051 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (1)))))
;
4052#line 1667 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4053 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
4054#line 1667 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4055 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (4)))))
;
4056#line 1667 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4057 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (5)))))
;
4058#line 1667 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4059 _HT = tmpMeta[3];
4060#line 1667 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4061 _HT2 = tmpMeta[4];
4062#line 1667 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4063 _eqList = tmpMeta[5];
4064#line 1667 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4065 _varList = tmpMeta[6];
4066#line 4066 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4067
4068#line 1668 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4069 if(omc_Flags_isSet(threadData, _OMC_LIT27((void*)((char*)(&(_OMC_LIT_STRUCT27).header) + 3))))
4070#line 1668 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4071 {
4072#line 1669 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4073 fputs(MMC_STRINGDATA(_OMC_LIT34)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT34).header) + 3))) - 3)))->data)
,stdoutstdout);
4074#line 4074 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4075 }
4076
4077#line 1671 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4078 tmpMeta[2] = MMC_TAGPTR(mmc_alloc_words(11))((void*)((char*)(mmc_alloc_words(11)) + 3));
4079#line 1671 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4080 memcpy(MMC_UNTAGPTR(tmpMeta[2])((void*)((char*)(tmpMeta[2]) - 3)), MMC_UNTAGPTR(_syst)((void*)((char*)(_syst) - 3)), 11*sizeof(modelica_metatype));
4081#line 1671 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4082 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[2])((void*)((char*)(tmpMeta[2]) - 3)))[3] = omc_BackendEquation_addList(threadData, _eqList, _orderedEqs);
4083#line 1671 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4084 _syst = tmpMeta[2];
4085#line 4085 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4086
4087#line 1672 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4088 tmpMeta[2] = MMC_TAGPTR(mmc_alloc_words(11))((void*)((char*)(mmc_alloc_words(11)) + 3));
4089#line 1672 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4090 memcpy(MMC_UNTAGPTR(tmpMeta[2])((void*)((char*)(tmpMeta[2]) - 3)), MMC_UNTAGPTR(_syst)((void*)((char*)(_syst) - 3)), 11*sizeof(modelica_metatype));
4091#line 1672 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4092 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[2])((void*)((char*)(tmpMeta[2]) - 3)))[2] = omc_BackendVariable_addVars(threadData, _varList, _orderedVars);
4093#line 1672 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4094 _syst = tmpMeta[2];
4095#line 4095 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4096
4097#line 1673 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4098 if(omc_Flags_isSet(threadData, _OMC_LIT43((void*)((char*)(&(_OMC_LIT_STRUCT43).header) + 3))))
4099#line 1673 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4100 {
4101#line 1674 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4102 omc_BackendDump_dumpVariables(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_syst), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_syst) - 3))) +
(2)))))
), _OMC_LIT40((void*)((char*)(&(_OMC_LIT_STRUCT40).header) + 3)));
4103#line 4103 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4104
4105#line 1675 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4106 omc_BackendDump_dumpEquationArray(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_syst), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_syst) - 3))) +
(3)))))
), _OMC_LIT41((void*)((char*)(&(_OMC_LIT_STRUCT41).header) + 3)));
4107#line 4107 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4108 }
4109#line 1677 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4110 tmpMeta[0+0] = omc_BackendDAEUtil_clearEqSyst(threadData, _syst);
4111#line 1677 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4112 tmp1_c1 = _index;
4113#line 4113 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4114 goto tmp3_done;
4115 }
4116 case 1: {
4117
4118 /* Pattern matching succeeded */
4119#line 1679 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4120 tmpMeta[0+0] = _inSystem;
4121#line 1679 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4122 tmp1_c1 = _inIndex;
4123#line 4123 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4124 goto tmp3_done;
4125 }
4126 }
4127 goto tmp3_end;
4128 tmp3_end: ;
4129 }
4130 goto goto_2;
4131 tmp3_done:
4132 (void)tmp4;
4133 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
4134 goto tmp3_done2;
4135 goto_2:;
4136 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
4137 if (++tmp4 < 2) {
4138 goto tmp3_top;
4139 }
4140 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
4141 tmp3_done2:;
4142 }
4143 }
4144 _outSystem = tmpMeta[0+0];
4145 _outIndex = tmp1_c1;
4146 _return: OMC_LABEL_UNUSED__attribute__((unused))
4147 if (out_outShared) { *out_outShared = _outShared; }
4148 if (out_outIndex) { *out_outIndex = _outIndex; }
4149 return _outSystem;
4150}
4151PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_CSE1(threadData_t *threadData, modelica_metatype _inSystem, modelica_metatype _inShared, modelica_metatype _inIndex, modelica_metatype *out_outShared, modelica_metatype *out_outIndex)
4152{
4153 modelica_integer tmp1;
4154 modelica_integer _outIndex;
4155 modelica_metatype _outSystem = NULL((void*)0);
4156 tmp1 = mmc_unbox_integer(_inIndex)(((mmc_sint_t) (_inIndex)) >> 1);
4157 _outSystem = omc_CommonSubExpression_CSE1(threadData, _inSystem, _inShared, tmp1, out_outShared, &_outIndex);
4158 /* skip box _outSystem; BackendDAE.EqSystem */
4159 /* skip box _outShared; BackendDAE.Shared */
4160 if (out_outIndex) { *out_outIndex = mmc_mk_icon(_outIndex); }
4161 return _outSystem;
4162}
4163
4164DLLExport
4165modelica_metatype omc_CommonSubExpression_cseBinary(threadData_t *threadData, modelica_metatype _inDAE)
4166{
4167 modelica_metatype _outDAE = NULL((void*)0);
4168 MMC_SO()mmc_check_stackoverflow(threadData);
4169 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4170 // _outDAE has no default value.
4171#line 1628 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4172 _outDAE = omc_BackendDAEUtil_mapEqSystemAndFold(threadData, _inDAE, boxvar_CommonSubExpression_CSE1((void*)((char*)(&(boxvar_lit_CommonSubExpression_CSE1).header
) + 3))
, mmc_mk_integermmc_mk_icon(((modelica_integer) 1)), NULL((void*)0));
4173#line 4173 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4174 _return: OMC_LABEL_UNUSED__attribute__((unused))
4175 return _outDAE;
4176}
4177
4178DLLExport
4179modelica_boolean omc_CommonSubExpression_isCSEExp(threadData_t *threadData, modelica_metatype _inExp)
4180{
4181 modelica_boolean _b;
4182 modelica_metatype _cr = NULL((void*)0);
4183 modelica_string _s = NULL((void*)0);
4184 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
4185 MMC_SO()mmc_check_stackoverflow(threadData);
4186 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4187 // _b has no default value.
4188 // _cr has no default value.
4189 // _s has no default value.
4190#line 4190 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4191 { /* matchcontinue expression */
4192 {
4193 volatile mmc_switch_type tmp3;
4194 int tmp4;
4195 tmp3 = 0;
4196 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
4197 tmp2_top:
4198 threadData->mmc_jumper = &new_mmc_jumper;
4199 for (; tmp3 < 2; tmp3++) {
4200 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
4201 case 0: {
4202 /* Pattern matching succeeded */
4203#line 1614 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4204 _cr = omc_Expression_expCref(threadData, _inExp);
4205#line 4205 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4206
4207#line 1615 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4208 /* Pattern-matching assignment */
4209#line 1615 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4210 tmpMeta[0] = _cr;
4211#line 1615 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4212 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[0],1,3)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0]) - 3)))==(((3 +1)
<< 10) + (((1 +3) & 255) << 2)))
== 0) goto goto_1;
4213#line 1615 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4214 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (2)))))
;
4215#line 1615 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4216 _s = tmpMeta[1];
4217#line 4217 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4218
4219#line 1616 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4220 _b = (stringEqual(substring(_s, ((modelica_integer) 1), ((modelica_integer) 4)), _OMC_LIT44)((((((*(mmc_uint_t*)((void*)((char*)(boxptr_substring(threadData
,_s,mmc_mk_icon(((modelica_integer) 1)),mmc_mk_icon(((modelica_integer
) 4)))) - 3)))) >> (3)) - 8)) == (((((*(mmc_uint_t*)((void
*)((char*)(((void*)((char*)(&(_OMC_LIT_STRUCT44).header) +
3))) - 3)))) >> (3)) - 8)) && !mmc_stringCompare
(boxptr_substring(threadData,_s,mmc_mk_icon(((modelica_integer
) 1)),mmc_mk_icon(((modelica_integer) 4))),((void*)((char*)(&
(_OMC_LIT_STRUCT44).header) + 3))))
);
4221#line 4221 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4222#line 4222 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4223 goto tmp2_done;
4224 }
4225 case 1: {
4226 /* Pattern matching succeeded */
4227#line 1618 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4228 _b = 0;
4229#line 4229 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4230#line 4230 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4231 goto tmp2_done;
4232 }
4233 }
4234 goto tmp2_end;
4235 tmp2_end: ;
4236 }
4237 goto goto_1;
4238 tmp2_done:
4239 (void)tmp3;
4240 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
4241 goto tmp2_done2;
4242 goto_1:;
4243 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
4244 if (++tmp3 < 2) {
4245 goto tmp2_top;
4246 }
4247 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
4248 tmp2_done2:;
4249 }
4250 }
4251 ;
4252 _return: OMC_LABEL_UNUSED__attribute__((unused))
4253 return _b;
4254}
4255modelica_metatype boxptr_CommonSubExpression_isCSEExp(threadData_t *threadData, modelica_metatype _inExp)
4256{
4257 modelica_boolean _b;
4258 modelica_metatype out_b;
4259 _b = omc_CommonSubExpression_isCSEExp(threadData, _inExp);
4260 out_b = mmc_mk_icon(_b);
4261 return out_b;
4262}
4263
4264DLLExport
4265modelica_boolean omc_CommonSubExpression_isCSECref(threadData_t *threadData, modelica_metatype _cr)
4266{
4267 modelica_boolean _b;
4268 modelica_string _s = NULL((void*)0);
4269 modelica_boolean tmp1 = 0;
4270 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
4271 MMC_SO()mmc_check_stackoverflow(threadData);
4272 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4273 // _b has no default value.
4274 // _s has no default value.
4275#line 4275 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4276 { /* matchcontinue expression */
4277 volatile modelica_metatype tmp4_1;
4278 tmp4_1 = _cr;
4279 {
4280 volatile mmc_switch_type tmp4;
4281 int tmp5;
4282 tmp4 = 0;
4283 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
4284 tmp3_top:
4285 threadData->mmc_jumper = &new_mmc_jumper;
4286 for (; tmp4 < 3; tmp4++) {
4287 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
4288 case 0: {
4289 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,1,3)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((3 +1) <<
10) + (((1 +3) & 255) << 2)))
== 0) goto tmp3_end;
4290 tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
4291
4292 _s = tmpMeta[0];
4293 tmp4 += 1; /* Pattern matching succeeded; we may skip some cases if we fail */
4294#line 1598 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4295 tmp1 = (stringEqual(substring(_s, ((modelica_integer) 1), ((modelica_integer) 4)), _OMC_LIT44)((((((*(mmc_uint_t*)((void*)((char*)(boxptr_substring(threadData
,_s,mmc_mk_icon(((modelica_integer) 1)),mmc_mk_icon(((modelica_integer
) 4)))) - 3)))) >> (3)) - 8)) == (((((*(mmc_uint_t*)((void
*)((char*)(((void*)((char*)(&(_OMC_LIT_STRUCT44).header) +
3))) - 3)))) >> (3)) - 8)) && !mmc_stringCompare
(boxptr_substring(threadData,_s,mmc_mk_icon(((modelica_integer
) 1)),mmc_mk_icon(((modelica_integer) 4))),((void*)((char*)(&
(_OMC_LIT_STRUCT44).header) + 3))))
);
4296#line 4296 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4297 goto tmp3_done;
4298 }
4299 case 1: {
4300 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,4)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((4 +1) <<
10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
4301 tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
4302
4303 _s = tmpMeta[0];
4304 /* Pattern matching succeeded */
4305#line 1600 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4306 tmp1 = (stringEqual(substring(_s, ((modelica_integer) 1), ((modelica_integer) 4)), _OMC_LIT44)((((((*(mmc_uint_t*)((void*)((char*)(boxptr_substring(threadData
,_s,mmc_mk_icon(((modelica_integer) 1)),mmc_mk_icon(((modelica_integer
) 4)))) - 3)))) >> (3)) - 8)) == (((((*(mmc_uint_t*)((void
*)((char*)(((void*)((char*)(&(_OMC_LIT_STRUCT44).header) +
3))) - 3)))) >> (3)) - 8)) && !mmc_stringCompare
(boxptr_substring(threadData,_s,mmc_mk_icon(((modelica_integer
) 1)),mmc_mk_icon(((modelica_integer) 4))),((void*)((char*)(&
(_OMC_LIT_STRUCT44).header) + 3))))
);
4307#line 4307 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4308 goto tmp3_done;
4309 }
4310 case 2: {
4311
4312 /* Pattern matching succeeded */
4313#line 1601 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4314 tmp1 = 0;
4315#line 4315 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4316 goto tmp3_done;
4317 }
4318 }
4319 goto tmp3_end;
4320 tmp3_end: ;
4321 }
4322 goto goto_2;
4323 tmp3_done:
4324 (void)tmp4;
4325 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
4326 goto tmp3_done2;
4327 goto_2:;
4328 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
4329 if (++tmp4 < 3) {
4330 goto tmp3_top;
4331 }
4332 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
4333 tmp3_done2:;
4334 }
4335 }
4336 _b = tmp1;
4337 _return: OMC_LABEL_UNUSED__attribute__((unused))
4338 return _b;
4339}
4340modelica_metatype boxptr_CommonSubExpression_isCSECref(threadData_t *threadData, modelica_metatype _cr)
4341{
4342 modelica_boolean _b;
4343 modelica_metatype out_b;
4344 _b = omc_CommonSubExpression_isCSECref(threadData, _cr);
4345 out_b = mmc_mk_icon(_b);
4346 return out_b;
4347}
4348
4349PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_createVarsForExp(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inAccumVarLst)
4350{
4351 modelica_metatype _outVarLst = NULL((void*)0);
4352 modelica_metatype tmpMeta[4] __attribute__((unused)) = {0};
4353 MMC_SO()mmc_check_stackoverflow(threadData);
4354 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4355 // _outVarLst has no default value.
4356#line 4356 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4357 { /* match expression */
4358 modelica_metatype tmp3_1;
4359 tmp3_1 = _inExp;
4360 {
4361 modelica_metatype _cr = NULL((void*)0);
4362 modelica_metatype _cr_ = NULL((void*)0);
4363 modelica_metatype _crefs = NULL((void*)0);
4364 modelica_metatype _expLst = NULL((void*)0);
4365 modelica_metatype _var = NULL((void*)0);
4366 modelica_metatype _ty = NULL((void*)0);
4367 modelica_metatype _arrayDim = NULL((void*)0);
4368 volatile mmc_switch_type tmp3;
4369 int tmp4;
4370 // _cr has no default value.
4371 // _cr_ has no default value.
4372 // _crefs has no default value.
4373 // _expLst has no default value.
4374 // _var has no default value.
4375 // _ty has no default value.
4376 // _arrayDim has no default value.
4377 tmp3 = 0;
4378 for (; tmp3 < 8; tmp3++) {
4379 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
4380 case 0: {
4381 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,6,2)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((2 +1) <<
10) + (((6 +3) & 255) << 2)))
== 0) goto tmp2_end;
4382 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
4383 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],4,0)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((0 +1)
<< 10) + (((4 +3) & 255) << 2)))
== 0) goto tmp2_end;
4384
4385 /* Pattern matching succeeded */
4386#line 1534 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4387 tmpMeta[0] = _inAccumVarLst;
4388#line 4388 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4389 goto tmp2_done;
4390 }
4391 case 1: {
4392 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,6,2)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((2 +1) <<
10) + (((6 +3) & 255) << 2)))
== 0) goto tmp2_end;
4393 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
4394 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(3)))))
;
4395 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],9,3)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))==(((3 +1)
<< 10) + (((9 +3) & 255) << 2)))
== 0) goto tmp2_end;
4396 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
4397 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],3,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3)))==(((1 +1)
<< 10) + (((3 +3) & 255) << 2)))
== 0) goto tmp2_end;
4398
4399 _cr = tmpMeta[1];
4400 /* Pattern matching succeeded */
4401#line 1538 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4402 _crefs = omc_ComponentReference_expandCref(threadData, _cr, 1);
4403#line 4403 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4404
4405#line 1544 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4406 _outVarLst = _inAccumVarLst;
4407#line 4407 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4408
4409#line 1545 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4410 {
4411#line 1545 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4412 modelica_metatype _cr_;
4413#line 1545 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4414 for (tmpMeta[1] = _crefs; !listEmpty(tmpMeta[1])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
; tmpMeta[1]=MMC_CDR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
)
4415#line 1545 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4416 {
4417#line 1545 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4418 _cr_ = MMC_CAR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (1)))))
;
4419#line 1546 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4420 _arrayDim = omc_ComponentReference_crefDims(threadData, _cr_);
4421#line 4421 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4422
4423#line 1547 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4424 tmpMeta[2] = mmc_mk_cons(omc_BackendVariable_createCSEArrayVar(threadData, _cr_, omc_ComponentReference_crefTypeFull(threadData, _cr_), _arrayDim), _outVarLst);
4425#line 1547 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4426 _outVarLst = tmpMeta[2];
4427#line 4427 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4428 }
4429 }
4430#line 1549 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4431 tmpMeta[0] = _outVarLst;
4432#line 4432 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4433 goto tmp2_done;
4434 }
4435 case 2: {
4436 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,6,2)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((2 +1) <<
10) + (((6 +3) & 255) << 2)))
== 0) goto tmp2_end;
4437 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
4438
4439 _cr = tmpMeta[1];
4440 /* Pattern matching succeeded */
4441 /* Check guard condition after assignments */
4442 if (!omc_Expression_isArrayType(threadData, omc_Expression_typeof(threadData, _inExp))) goto tmp2_end;
4443#line 1553 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4444 _crefs = omc_ComponentReference_expandCref(threadData, _cr, 1);
4445#line 4445 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4446
4447#line 1555 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4448 _outVarLst = _inAccumVarLst;
4449#line 4449 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4450
4451#line 1556 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4452 _ty = omc_DAEUtil_expTypeElementType(threadData, omc_Expression_typeof(threadData, _inExp));
4453#line 4453 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4454
4455#line 1557 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4456 {
4457#line 1557 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4458 modelica_metatype _cr_;
4459#line 1557 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4460 for (tmpMeta[1] = _crefs; !listEmpty(tmpMeta[1])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
; tmpMeta[1]=MMC_CDR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
)
4461#line 1557 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4462 {
4463#line 1557 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4464 _cr_ = MMC_CAR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (1)))))
;
4465#line 1558 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4466 _arrayDim = omc_ComponentReference_crefDims(threadData, _cr_);
4467#line 4467 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4468
4469#line 1560 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4470 tmpMeta[2] = mmc_mk_cons(omc_BackendVariable_createCSEArrayVar(threadData, _cr_, _ty, _arrayDim), _outVarLst);
4471#line 1560 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4472 _outVarLst = tmpMeta[2];
4473#line 4473 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4474 }
4475 }
4476#line 1563 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4477 tmpMeta[0] = _outVarLst;
4478#line 4478 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4479 goto tmp2_done;
4480 }
4481 case 3: {
4482 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,6,2)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((2 +1) <<
10) + (((6 +3) & 255) << 2)))
== 0) goto tmp2_end;
4483 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
4484
4485 _cr = tmpMeta[1];
4486 /* Pattern matching succeeded */
4487#line 1567 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4488 _var = omc_BackendVariable_createCSEVar(threadData, _cr, omc_Expression_typeof(threadData, _inExp));
4489#line 4489 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4490#line 1568 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4491 tmpMeta[1] = mmc_mk_cons(_var, _inAccumVarLst);
4492#line 1568 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4493 tmpMeta[0] = tmpMeta[1];
4494#line 4494 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4495 goto tmp2_done;
4496 }
4497 case 4: {
4498 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,19,1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((1 +1) <<
10) + (((19 +3) & 255) << 2)))
== 0) goto tmp2_end;
4499 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
4500 _expLst = tmpMeta[1];
4501 /* Pattern matching succeeded */
4502#line 1571 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4503 tmpMeta[0] = omc_List_fold(threadData, _expLst, boxvar_CommonSubExpression_createVarsForExp((void*)((char*)(&(boxvar_lit_CommonSubExpression_createVarsForExp
).header) + 3))
, _inAccumVarLst);
4504#line 4504 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4505 goto tmp2_done;
4506 }
4507 case 5: {
4508 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,16,3)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((3 +1) <<
10) + (((16 +3) & 255) << 2)))
== 0) goto tmp2_end;
4509 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(4)))))
;
4510 _expLst = tmpMeta[1];
4511 /* Pattern matching succeeded */
4512#line 1576 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4513 tmpMeta[0] = omc_List_fold(threadData, _expLst, boxvar_CommonSubExpression_createVarsForExp((void*)((char*)(&(boxvar_lit_CommonSubExpression_createVarsForExp
).header) + 3))
, _inAccumVarLst);
4514#line 4514 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4515 goto tmp2_done;
4516 }
4517 case 6: {
4518 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,14,4)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((4 +1) <<
10) + (((14 +3) & 255) << 2)))
== 0) goto tmp2_end;
4519 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(3)))))
;
4520
4521 _expLst = tmpMeta[1];
4522 /* Pattern matching succeeded */
4523#line 1580 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4524 fputs(MMC_STRINGDATA(_OMC_LIT45)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT45).header) + 3))) - 3)))->data)
,stdoutstdout);
4525#line 4525 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4526#line 1581 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4527 tmpMeta[0] = omc_List_fold(threadData, _expLst, boxvar_CommonSubExpression_createVarsForExp((void*)((char*)(&(boxvar_lit_CommonSubExpression_createVarsForExp
).header) + 3))
, _inAccumVarLst);
4528#line 4528 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4529 goto tmp2_done;
4530 }
4531 case 7: {
4532
4533 /* Pattern matching succeeded */
4534#line 1585 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4535 tmpMeta[0] = _inAccumVarLst;
4536#line 4536 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4537 goto tmp2_done;
4538 }
4539 }
4540 goto tmp2_end;
4541 tmp2_end: ;
4542 }
4543 goto goto_1;
4544 goto_1:;
4545 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
4546 goto tmp2_done;
4547 tmp2_done:;
4548 }
4549 }
4550 _outVarLst = tmpMeta[0];
4551 _return: OMC_LABEL_UNUSED__attribute__((unused))
4552 return _outVarLst;
4553}
4554
4555PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_createVarsForExp__onlyCSECrefs(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inAccumVarLst)
4556{
4557 modelica_metatype _outVarLst = NULL((void*)0);
4558 modelica_metatype tmpMeta[4] __attribute__((unused)) = {0};
4559 MMC_SO()mmc_check_stackoverflow(threadData);
4560 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4561 // _outVarLst has no default value.
4562#line 4562 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4563 { /* match expression */
4564 modelica_metatype tmp3_1;
4565 tmp3_1 = _inExp;
4566 {
4567 modelica_metatype _cr = NULL((void*)0);
4568 modelica_metatype _cr_ = NULL((void*)0);
4569 modelica_metatype _crefs = NULL((void*)0);
4570 modelica_metatype _expLst = NULL((void*)0);
4571 modelica_metatype _var = NULL((void*)0);
4572 modelica_metatype _ty = NULL((void*)0);
4573 modelica_metatype _arrayDim = NULL((void*)0);
4574 volatile mmc_switch_type tmp3;
4575 int tmp4;
4576 // _cr has no default value.
4577 // _cr_ has no default value.
4578 // _crefs has no default value.
4579 // _expLst has no default value.
4580 // _var has no default value.
4581 // _ty has no default value.
4582 // _arrayDim has no default value.
4583 tmp3 = 0;
4584 for (; tmp3 < 8; tmp3++) {
4585 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
4586 case 0: {
4587 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,6,2)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((2 +1) <<
10) + (((6 +3) & 255) << 2)))
== 0) goto tmp2_end;
4588 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
4589 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],4,0)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((0 +1)
<< 10) + (((4 +3) & 255) << 2)))
== 0) goto tmp2_end;
4590
4591 /* Pattern matching succeeded */
4592#line 1458 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4593 tmpMeta[0] = _inAccumVarLst;
4594#line 4594 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4595 goto tmp2_done;
4596 }
4597 case 1: {
4598 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,6,2)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((2 +1) <<
10) + (((6 +3) & 255) << 2)))
== 0) goto tmp2_end;
4599 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
4600 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(3)))))
;
4601 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],9,3)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))==(((3 +1)
<< 10) + (((9 +3) & 255) << 2)))
== 0) goto tmp2_end;
4602 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
4603 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],3,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3)))==(((1 +1)
<< 10) + (((3 +3) & 255) << 2)))
== 0) goto tmp2_end;
4604
4605 _cr = tmpMeta[1];
4606 /* Pattern matching succeeded */
4607 /* Check guard condition after assignments */
4608 if (!omc_CommonSubExpression_isCSECref(threadData, _cr)) goto tmp2_end;
4609#line 1462 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4610 _crefs = omc_ComponentReference_expandCref(threadData, _cr, 1);
4611#line 4611 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4612
4613#line 1468 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4614 _outVarLst = _inAccumVarLst;
4615#line 4615 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4616
4617#line 1469 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4618 {
4619#line 1469 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4620 modelica_metatype _cr_;
4621#line 1469 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4622 for (tmpMeta[1] = _crefs; !listEmpty(tmpMeta[1])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
; tmpMeta[1]=MMC_CDR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
)
4623#line 1469 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4624 {
4625#line 1469 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4626 _cr_ = MMC_CAR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (1)))))
;
4627#line 1470 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4628 _arrayDim = omc_ComponentReference_crefDims(threadData, _cr_);
4629#line 4629 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4630
4631#line 1471 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4632 tmpMeta[2] = mmc_mk_cons(omc_BackendVariable_createCSEArrayVar(threadData, _cr_, omc_ComponentReference_crefTypeFull(threadData, _cr_), _arrayDim), _outVarLst);
4633#line 1471 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4634 _outVarLst = tmpMeta[2];
4635#line 4635 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4636 }
4637 }
4638#line 1473 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4639 tmpMeta[0] = _outVarLst;
4640#line 4640 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4641 goto tmp2_done;
4642 }
4643 case 2: {
4644 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,6,2)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((2 +1) <<
10) + (((6 +3) & 255) << 2)))
== 0) goto tmp2_end;
4645 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
4646
4647 _cr = tmpMeta[1];
4648 /* Pattern matching succeeded */
4649 /* Check guard condition after assignments */
4650 if (!(omc_CommonSubExpression_isCSECref(threadData, _cr) && omc_Expression_isArrayType(threadData, omc_Expression_typeof(threadData, _inExp)))) goto tmp2_end;
4651#line 1477 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4652 _crefs = omc_ComponentReference_expandCref(threadData, _cr, 1);
4653#line 4653 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4654
4655#line 1479 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4656 _outVarLst = _inAccumVarLst;
4657#line 4657 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4658
4659#line 1480 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4660 _ty = omc_DAEUtil_expTypeElementType(threadData, omc_Expression_typeof(threadData, _inExp));
4661#line 4661 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4662
4663#line 1481 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4664 {
4665#line 1481 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4666 modelica_metatype _cr_;
4667#line 1481 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4668 for (tmpMeta[1] = _crefs; !listEmpty(tmpMeta[1])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
; tmpMeta[1]=MMC_CDR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
)
4669#line 1481 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4670 {
4671#line 1481 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4672 _cr_ = MMC_CAR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (1)))))
;
4673#line 1482 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4674 _arrayDim = omc_ComponentReference_crefDims(threadData, _cr_);
4675#line 4675 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4676
4677#line 1484 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4678 tmpMeta[2] = mmc_mk_cons(omc_BackendVariable_createCSEArrayVar(threadData, _cr_, _ty, _arrayDim), _outVarLst);
4679#line 1484 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4680 _outVarLst = tmpMeta[2];
4681#line 4681 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4682 }
4683 }
4684#line 1487 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4685 tmpMeta[0] = _outVarLst;
4686#line 4686 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4687 goto tmp2_done;
4688 }
4689 case 3: {
4690 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,6,2)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((2 +1) <<
10) + (((6 +3) & 255) << 2)))
== 0) goto tmp2_end;
4691 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
4692
4693 _cr = tmpMeta[1];
4694 /* Pattern matching succeeded */
4695 /* Check guard condition after assignments */
4696 if (!omc_CommonSubExpression_isCSECref(threadData, _cr)) goto tmp2_end;
4697#line 1491 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4698 _var = omc_BackendVariable_createCSEVar(threadData, _cr, omc_Expression_typeof(threadData, _inExp));
4699#line 4699 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4700#line 1492 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4701 tmpMeta[1] = mmc_mk_cons(_var, _inAccumVarLst);
4702#line 1492 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4703 tmpMeta[0] = tmpMeta[1];
4704#line 4704 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4705 goto tmp2_done;
4706 }
4707 case 4: {
4708 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,19,1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((1 +1) <<
10) + (((19 +3) & 255) << 2)))
== 0) goto tmp2_end;
4709 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
4710 _expLst = tmpMeta[1];
4711 /* Pattern matching succeeded */
4712#line 1495 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4713 tmpMeta[0] = omc_List_fold(threadData, _expLst, boxvar_CommonSubExpression_createVarsForExp__onlyCSECrefs((void*)((char*)(&(boxvar_lit_CommonSubExpression_createVarsForExp__onlyCSECrefs
).header) + 3))
, _inAccumVarLst);
4714#line 4714 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4715 goto tmp2_done;
4716 }
4717 case 5: {
4718 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,16,3)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((3 +1) <<
10) + (((16 +3) & 255) << 2)))
== 0) goto tmp2_end;
4719 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(4)))))
;
4720 _expLst = tmpMeta[1];
4721 /* Pattern matching succeeded */
4722#line 1500 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4723 tmpMeta[0] = omc_List_fold(threadData, _expLst, boxvar_CommonSubExpression_createVarsForExp__onlyCSECrefs((void*)((char*)(&(boxvar_lit_CommonSubExpression_createVarsForExp__onlyCSECrefs
).header) + 3))
, _inAccumVarLst);
4724#line 4724 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4725 goto tmp2_done;
4726 }
4727 case 6: {
4728 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,14,4)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((4 +1) <<
10) + (((14 +3) & 255) << 2)))
== 0) goto tmp2_end;
4729 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(3)))))
;
4730
4731 _expLst = tmpMeta[1];
4732 /* Pattern matching succeeded */
4733#line 1504 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4734 fputs(MMC_STRINGDATA(_OMC_LIT45)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT45).header) + 3))) - 3)))->data)
,stdoutstdout);
4735#line 4735 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4736#line 1505 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4737 tmpMeta[0] = omc_List_fold(threadData, _expLst, boxvar_CommonSubExpression_createVarsForExp__onlyCSECrefs((void*)((char*)(&(boxvar_lit_CommonSubExpression_createVarsForExp__onlyCSECrefs
).header) + 3))
, _inAccumVarLst);
4738#line 4738 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4739 goto tmp2_done;
4740 }
4741 case 7: {
4742
4743 /* Pattern matching succeeded */
4744#line 1509 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4745 tmpMeta[0] = _inAccumVarLst;
4746#line 4746 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4747 goto tmp2_done;
4748 }
4749 }
4750 goto tmp2_end;
4751 tmp2_end: ;
4752 }
4753 goto goto_1;
4754 goto_1:;
4755 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
4756 goto tmp2_done;
4757 tmp2_done:;
4758 }
4759 }
4760 _outVarLst = tmpMeta[0];
4761 _return: OMC_LABEL_UNUSED__attribute__((unused))
4762 return _outVarLst;
4763}
4764
4765static modelica_metatype closure2_CommonSubExpression_createReturnExp(threadData_t *thData, modelica_metatype closure, modelica_metatype inType, modelica_metatype inIndex, modelica_metatype tmp7)
4766{
4767 modelica_string inPrefix = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),1))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (1)))))
;
4768 modelica_metatype inComplex = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),2))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (2)))))
;
4769 return boxptr_CommonSubExpression_createReturnExp(thData, inType, inIndex, inPrefix, inComplex, tmp7);
4770}
4771PROTECTED_FUNCTION_STATIC modelica_metatype omc_CommonSubExpression_createReturnExp(threadData_t *threadData, modelica_metatype _inType, modelica_integer _inIndex, modelica_string _inPrefix, modelica_boolean _inComplex, modelica_integer *out_outIndex)
4772{
4773 modelica_metatype _outExp = NULL((void*)0);
4774 modelica_integer _outIndex;
4775 modelica_integer tmp1_c1 __attribute__((unused)) = 0;
4776 modelica_metatype tmpMeta[5] __attribute__((unused)) = {0};
4777 MMC_SO()mmc_check_stackoverflow(threadData);
4778 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4779 // _outExp has no default value.
4780 // _outIndex has no default value.
4781#line 1353 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4782
4783#line 1353 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4784
4785#line 4785 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4786 { /* match expression */
4787 modelica_metatype tmp4_1;
4788 tmp4_1 = _inType;
4789 {
4790 modelica_integer _i;
4791 modelica_string _str = NULL((void*)0);
4792 modelica_metatype _value = NULL((void*)0);
4793 modelica_metatype _cr = NULL((void*)0);
4794 modelica_metatype _ty = NULL((void*)0);
4795 modelica_metatype _typeLst = NULL((void*)0);
4796 modelica_metatype _expLst = NULL((void*)0);
4797 volatile mmc_switch_type tmp4;
4798 int tmp5;
4799 // _i has no default value.
4800 // _str has no default value.
4801 // _value has no default value.
4802 // _cr has no default value.
4803 // _ty has no default value.
4804 // _typeLst has no default value.
4805 // _expLst has no default value.
4806 tmp4 = 0;
4807 for (; tmp4 < 9; tmp4++) {
4808 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
4809 case 0: {
4810 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,1,1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((1 +1) <<
10) + (((1 +3) & 255) << 2)))
== 0) goto tmp3_end;
4811
4812 /* Pattern matching succeeded */
4813#line 1368 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4814 tmpMeta[2] = stringAppend(_inPrefix,intString(_inIndex));
4815#line 1368 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4816 _str = tmpMeta[2];
4817#line 4817 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4818
4819#line 1369 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4820 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
4821#line 1369 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4822 tmpMeta[3] = mmc_mk_box4(4, &DAE_ComponentRef_CREF__IDENT__desc, _str, _OMC_LIT46((void*)((char*)(&(_OMC_LIT_STRUCT46).header) + 3)), tmpMeta[2]);
4823#line 1369 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4824 _cr = tmpMeta[3];
4825#line 4825 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4826
4827#line 1370 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4828 tmpMeta[2] = mmc_mk_box3(9, &DAE_Exp_CREF__desc, _cr, _OMC_LIT46((void*)((char*)(&(_OMC_LIT_STRUCT46).header) + 3)));
4829#line 1370 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4830 _value = tmpMeta[2];
4831#line 4831 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4832#line 1371 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4833 tmpMeta[0+0] = _value;
4834#line 1371 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4835 tmp1_c1 = ((modelica_integer) 1) + _inIndex;
4836#line 4836 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4837 goto tmp3_done;
4838 }
4839 case 1: {
4840 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((1 +1) <<
10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
4841
4842 /* Pattern matching succeeded */
4843#line 1374 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4844 tmpMeta[2] = stringAppend(_inPrefix,intString(_inIndex));
4845#line 1374 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4846 _str = tmpMeta[2];
4847#line 4847 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4848
4849#line 1375 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4850 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
4851#line 1375 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4852 tmpMeta[3] = mmc_mk_box4(4, &DAE_ComponentRef_CREF__IDENT__desc, _str, _OMC_LIT47((void*)((char*)(&(_OMC_LIT_STRUCT47).header) + 3)), tmpMeta[2]);
4853#line 1375 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4854 _cr = tmpMeta[3];
4855#line 4855 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4856
4857#line 1376 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4858 tmpMeta[2] = mmc_mk_box3(9, &DAE_Exp_CREF__desc, _cr, _OMC_LIT47((void*)((char*)(&(_OMC_LIT_STRUCT47).header) + 3)));
4859#line 1376 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4860 _value = tmpMeta[2];
4861#line 4861 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4862#line 1377 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4863 tmpMeta[0+0] = _value;
4864#line 1377 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4865 tmp1_c1 = ((modelica_integer) 1) + _inIndex;
4866#line 4866 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4867 goto tmp3_done;
4868 }
4869 case 2: {
4870 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,2,1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((1 +1) <<
10) + (((2 +3) & 255) << 2)))
== 0) goto tmp3_end;
4871
4872 /* Pattern matching succeeded */
4873#line 1380 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4874 tmpMeta[2] = stringAppend(_inPrefix,intString(_inIndex));
4875#line 1380 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4876 _str = tmpMeta[2];
4877#line 4877 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4878
4879#line 1381 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4880 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
4881#line 1381 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4882 tmpMeta[3] = mmc_mk_box4(4, &DAE_ComponentRef_CREF__IDENT__desc, _str, _OMC_LIT48((void*)((char*)(&(_OMC_LIT_STRUCT48).header) + 3)), tmpMeta[2]);
4883#line 1381 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4884 _cr = tmpMeta[3];
4885#line 4885 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4886
4887#line 1382 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4888 tmpMeta[2] = mmc_mk_box3(9, &DAE_Exp_CREF__desc, _cr, _OMC_LIT48((void*)((char*)(&(_OMC_LIT_STRUCT48).header) + 3)));
4889#line 1382 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4890 _value = tmpMeta[2];
4891#line 4891 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4892#line 1383 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4893 tmpMeta[0+0] = _value;
4894#line 1383 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4895 tmp1_c1 = ((modelica_integer) 1) + _inIndex;
4896#line 4896 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4897 goto tmp3_done;
4898 }
4899 case 3: {
4900 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,3,1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((1 +1) <<
10) + (((3 +3) & 255) << 2)))
== 0) goto tmp3_end;
4901
4902 /* Pattern matching succeeded */
4903#line 1386 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4904 tmpMeta[2] = stringAppend(_inPrefix,intString(_inIndex));
4905#line 1386 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4906 _str = tmpMeta[2];
4907#line 4907 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4908
4909#line 1387 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4910 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
4911#line 1387 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4912 tmpMeta[3] = mmc_mk_box4(4, &DAE_ComponentRef_CREF__IDENT__desc, _str, _OMC_LIT49((void*)((char*)(&(_OMC_LIT_STRUCT49).header) + 3)), tmpMeta[2]);
4913#line 1387 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4914 _cr = tmpMeta[3];
4915#line 4915 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4916
4917#line 1388 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4918 tmpMeta[2] = mmc_mk_box3(9, &DAE_Exp_CREF__desc, _cr, _OMC_LIT49((void*)((char*)(&(_OMC_LIT_STRUCT49).header) + 3)));
4919#line 1388 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4920 _value = tmpMeta[2];
4921#line 4921 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4922#line 1389 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4923 tmpMeta[0+0] = _value;
4924#line 1389 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4925 tmp1_c1 = ((modelica_integer) 1) + _inIndex;
4926#line 4926 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4927 goto tmp3_done;
4928 }
4929 case 4: {
4930 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,4,1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((1 +1) <<
10) + (((4 +3) & 255) << 2)))
== 0) goto tmp3_end;
4931
4932 /* Pattern matching succeeded */
4933#line 1392 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4934 tmpMeta[2] = stringAppend(_inPrefix,intString(_inIndex));
4935#line 1392 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4936 _str = tmpMeta[2];
4937#line 4937 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4938
4939#line 1393 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4940 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
4941#line 1393 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4942 tmpMeta[3] = mmc_mk_box4(4, &DAE_ComponentRef_CREF__IDENT__desc, _str, _OMC_LIT50((void*)((char*)(&(_OMC_LIT_STRUCT50).header) + 3)), tmpMeta[2]);
4943#line 1393 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4944 _cr = tmpMeta[3];
4945#line 4945 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4946
4947#line 1394 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4948 tmpMeta[2] = mmc_mk_box3(9, &DAE_Exp_CREF__desc, _cr, _OMC_LIT50((void*)((char*)(&(_OMC_LIT_STRUCT50).header) + 3)));
4949#line 1394 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4950 _value = tmpMeta[2];
4951#line 4951 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4952#line 1395 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4953 tmpMeta[0+0] = _value;
4954#line 1395 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4955 tmp1_c1 = ((modelica_integer) 1) + _inIndex;
4956#line 4956 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4957 goto tmp3_done;
4958 }
4959 case 5: {
4960 modelica_integer tmp6;
4961 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,14,2)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((2 +1) <<
10) + (((14 +3) & 255) << 2)))
== 0) goto tmp3_end;
4962 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
4963
4964 _typeLst = tmpMeta[2];
4965 /* Pattern matching succeeded */
4966#line 1398 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4967 if(_inComplex)
4968#line 1398 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4969 {
4970#line 1399 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4971 /* Pattern-matching tuple assignment */
4972#line 1399 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4973 tmpMeta[3] = mmc_mk_box2(0, _inPrefix, mmc_mk_boolean(_inComplex)((_inComplex) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))));
4974#line 1399 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4975 tmpMeta[4] = omc_List_mapFold(threadData, _typeLst, (modelica_fnptr) mmc_mk_box2(0,closure2_CommonSubExpression_createReturnExp,tmpMeta[3]), mmc_mk_integermmc_mk_icon(_inIndex), &tmpMeta[2]);
4976#line 1399 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4977 _expLst = tmpMeta[4];
4978#line 1399 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4979 tmp6 = mmc_unbox_integer(tmpMeta[2])(((mmc_sint_t) (tmpMeta[2])) >> 1);
4980#line 1399 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4981 _i = tmp6 /* pattern as ty=Integer */;
4982#line 4982 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4983
4984#line 1400 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4985 tmpMeta[2] = mmc_mk_box2(22, &DAE_Exp_TUPLE__desc, _expLst);
4986#line 1400 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4987 _value = tmpMeta[2];
4988#line 4988 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
4989 }
4990 else
4991 {
4992#line 1402 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4993 /* Pattern-matching assignment */
4994#line 1402 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4995 tmpMeta[2] = _typeLst;
4996#line 1402 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4997 if (listEmpty(tmpMeta[2])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_2;
4998#line 1402 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
4999 tmpMeta[3] = MMC_CAR(tmpMeta[2])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (1)))))
;
5000#line 1402 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5001 tmpMeta[4] = MMC_CDR(tmpMeta[2])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
5002#line 1402 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5003 _ty = tmpMeta[3];
5004#line 5004 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
5005
5006#line 1403 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5007 _value = omc_CommonSubExpression_createReturnExp(threadData, _ty, _inIndex, _inPrefix, 0 ,&_i);
5008#line 5008 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
5009 }
5010#line 1405 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5011 tmpMeta[0+0] = _value;
5012#line 1405 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5013 tmp1_c1 = _i;
5014#line 5014 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
5015 goto tmp3_done;
5016 }
5017 case 6: {
5018 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,6,2)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((2 +1) <<
10) + (((6 +3) & 255) << 2)))
== 0) goto tmp3_end;
5019
5020 /* Pattern matching succeeded */
5021#line 1409 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5022 tmpMeta[2] = stringAppend(_inPrefix,intString(_inIndex));
5023#line 1409 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5024 _str = tmpMeta[2];
5025#line 5025 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
5026
5027#line 1410 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5028 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
5029#line 1410 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5030 tmpMeta[3] = mmc_mk_box4(4, &DAE_ComponentRef_CREF__IDENT__desc, _str, _inType, tmpMeta[2]);
5031#line 1410 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5032 _cr = tmpMeta[3];
5033#line 5033 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
5034
5035#line 1414 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5036 tmpMeta[2] = mmc_mk_box3(9, &DAE_Exp_CREF__desc, _cr, _inType);
5037#line 1414 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5038 _value = tmpMeta[2];
5039#line 5039 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
5040#line 1415 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5041 tmpMeta[0+0] = _value;
5042#line 1415 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5043 tmp1_c1 = ((modelica_integer) 1) + _inIndex;
5044#line 5044 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
5045 goto tmp3_done;
5046 }
5047 case 7: {
5048 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,9,3)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((3 +1) <<
10) + (((9 +3) & 255) << 2)))
== 0) goto tmp3_end;
5049 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
5050 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],3,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))==(((1 +1)
<< 10) + (((3 +3) & 255) << 2)))
== 0) goto tmp3_end;
5051
5052 /* Pattern matching succeeded */
5053#line 1419 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5054 tmpMeta[2] = stringAppend(_inPrefix,intString(_inIndex));
5055#line 1419 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5056 _str = tmpMeta[2];
5057#line 5057 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
5058
5059#line 1420 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5060 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
5061#line 1420 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5062 tmpMeta[3] = mmc_mk_box4(4, &DAE_ComponentRef_CREF__IDENT__desc, _str, _inType, tmpMeta[2]);
5063#line 1420 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5064 _cr = tmpMeta[3];
5065#line 5065 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
5066
5067#line 1426 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5068 tmpMeta[2] = mmc_mk_box3(9, &DAE_Exp_CREF__desc, _cr, _inType);
5069#line 1426 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5070 _value = tmpMeta[2];
5071#line 5071 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
5072#line 1427 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5073 tmpMeta[0+0] = _value;
5074#line 1427 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5075 tmp1_c1 = ((modelica_integer) 1) + _inIndex;
5076#line 5076 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
5077 goto tmp3_done;
5078 }
5079 case 8: {
5080
5081 /* Pattern matching succeeded */
5082#line 1430 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5083 if(omc_Flags_isSet(threadData, _OMC_LIT27((void*)((char*)(&(_OMC_LIT_STRUCT27).header) + 3))))
5084#line 1430 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5085 {
5086#line 1431 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5087 tmpMeta[2] = stringAppend(_OMC_LIT51((void*)((char*)(&(_OMC_LIT_STRUCT51).header) + 3)),omc_Types_printTypeStr(threadData, _inType));
5088#line 1431 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5089 tmpMeta[3] = stringAppend(tmpMeta[2],_OMC_LIT34((void*)((char*)(&(_OMC_LIT_STRUCT34).header) + 3)));
5090#line 1431 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5091 fputs(MMC_STRINGDATA(tmpMeta[3])(((struct mmc_string*)((void*)((char*)(tmpMeta[3]) - 3)))->
data)
,stdoutstdout);
5092#line 5092 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
5093 }
5094#line 1433 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5095 goto goto_2;
5096#line 5096 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
5097 goto tmp3_done;
5098 }
5099 }
5100 goto tmp3_end;
5101 tmp3_end: ;
5102 }
5103 goto goto_2;
5104 goto_2:;
5105 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
5106 goto tmp3_done;
5107 tmp3_done:;
5108 }
5109 }
5110 _outExp = tmpMeta[0+0];
5111 _outIndex = tmp1_c1;
5112 _return: OMC_LABEL_UNUSED__attribute__((unused))
5113 if (out_outIndex) { *out_outIndex = _outIndex; }
5114 return _outExp;
5115}
5116PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_CommonSubExpression_createReturnExp(threadData_t *threadData, modelica_metatype _inType, modelica_metatype _inIndex, modelica_metatype _inPrefix, modelica_metatype _inComplex, modelica_metatype *out_outIndex)
5117{
5118 modelica_integer tmp1;
5119 modelica_integer tmp2;
5120 modelica_integer _outIndex;
5121 modelica_metatype _outExp = NULL((void*)0);
5122 tmp1 = mmc_unbox_integer(_inIndex)(((mmc_sint_t) (_inIndex)) >> 1);
5123 tmp2 = mmc_unbox_integer(_inComplex)(((mmc_sint_t) (_inComplex)) >> 1);
5124 _outExp = omc_CommonSubExpression_createReturnExp(threadData, _inType, tmp1, _inPrefix, tmp2, &_outIndex);
5125 /* skip box _outExp; DAE.Exp */
5126 if (out_outIndex) { *out_outIndex = mmc_mk_icon(_outIndex); }
5127 return _outExp;
5128}
5129
5130PROTECTED_FUNCTION_STATIC modelica_boolean omc_CommonSubExpression_isCallRecordConstructor(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _funcsIn)
5131{
5132 modelica_boolean _outIsCall;
5133 modelica_boolean tmp1 = 0;
5134 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
5135 MMC_SO()mmc_check_stackoverflow(threadData);
5136 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
5137 // _outIsCall has no default value.
5138#line 5138 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
5139 { /* matchcontinue expression */
5140 volatile modelica_metatype tmp4_1;
5141 tmp4_1 = _inExp;
5142 {
5143 modelica_metatype _path = NULL((void*)0);
5144 modelica_metatype _func = NULL((void*)0);
5145 volatile mmc_switch_type tmp4;
5146 int tmp5;
5147 // _path has no default value.
5148 // _func has no default value.
5149 tmp4 = 0;
5150 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
5151 tmp3_top:
5152 threadData->mmc_jumper = &new_mmc_jumper;
5153 for (; tmp4 < 2; tmp4++) {
5154 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
5155 case 0: {
5156 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,13,3)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((3 +1) <<
10) + (((13 +3) & 255) << 2)))
== 0) goto tmp3_end;
5157 tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
5158
5159 _path = tmpMeta[0];
5160 /* Pattern matching succeeded */
5161#line 1339 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5162 /* Pattern-matching assignment */
5163#line 1339 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5164 tmpMeta[0] = omc_DAE_AvlTreePathFunction_get(threadData, _funcsIn, _path);
5165#line 1339 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5166 if (optionNone(tmpMeta[0])(0==((((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0]) - 3)))) &
(7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0])
- 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char*)
(tmpMeta[0]) - 3)))) >> 10)) ? 1 : 0)
) goto goto_2;
5167#line 1339 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5168 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (1)))))
;
5169#line 1339 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5170 _func = tmpMeta[1];
5171#line 5171 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
5172#line 1340 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5173 tmp1 = listEmpty(omc_DAEUtil_getFunctionElements(threadData, _func))((*(mmc_uint_t*)((void*)((char*)(omc_DAEUtil_getFunctionElements
(threadData, _func)) - 3))) == (((0) << 10) + (((0) &
255) << 2)))
;
5174#line 5174 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
5175 goto tmp3_done;
5176 }
5177 case 1: {
5178
5179 /* Pattern matching succeeded */
5180#line 1341 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/BackEnd/CommonSubExpression.mo"
5181 tmp1 = 0;
5182#line 5182 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/CommonSubExpression.c"
5183 goto tmp3_done;
5184 }
5185 }
5186 goto tmp3_end;
5187 tmp3_end: ;
5188 }
5189 goto goto_2;
5190 tmp3_done:
5191 (void)tmp4;
5192