Bug Summary

File:OMCompiler/Compiler/boot/build/Differentiate.c
Warning:line 3333, column 5
Value stored to '_number' 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/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c" OMC_BASE_FILE
3#else
4 #define OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c" "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
5#endif
6#include "omc_simulation_settings.h"
7#include "Differentiate.h"
8#define _OMC_LIT0_data"### dumpInputData ###\n" "### dumpInputData ###\n"
9static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT0,22,_OMC_LIT0_data)struct { mmc_uint_t header; const char data[(22)+1]; } _OMC_LIT_STRUCT0
= { ((((mmc_uint_t)22)<<(3))+((1<<(3+3))+5)), "### dumpInputData ###\n"
}
;
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"### for " "### for "
12static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT1,8,_OMC_LIT1_data)struct { mmc_uint_t header; const char data[(8)+1]; } _OMC_LIT_STRUCT1
= { ((((mmc_uint_t)8)<<(3))+((1<<(3+3))+5)), "### for "
}
;
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" ###\n" " ###\n"
15static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT2,5,_OMC_LIT2_data)struct { mmc_uint_t header; const char data[(5)+1]; } _OMC_LIT_STRUCT2
= { ((((mmc_uint_t)5)<<(3))+((1<<(3+3))+5)), " ###\n"
}
;
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"independentVars:\n" "independentVars:\n"
18static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT3,17,_OMC_LIT3_data)struct { mmc_uint_t header; const char data[(17)+1]; } _OMC_LIT_STRUCT3
= { ((((mmc_uint_t)17)<<(3))+((1<<(3+3))+5)), "independentVars:\n"
}
;
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"dependenentVars:\n" "dependenentVars:\n"
21static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT4,17,_OMC_LIT4_data)struct { mmc_uint_t header; const char data[(17)+1]; } _OMC_LIT_STRUCT4
= { ((((mmc_uint_t)17)<<(3))+((1<<(3+3))+5)), "dependenentVars:\n"
}
;
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"knownVars:\n" "knownVars:\n"
24static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT5,11,_OMC_LIT5_data)struct { mmc_uint_t header; const char data[(11)+1]; } _OMC_LIT_STRUCT5
= { ((((mmc_uint_t)11)<<(3))+((1<<(3+3))+5)), "knownVars:\n"
}
;
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"allVars:\n" "allVars:\n"
27static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT6,9,_OMC_LIT6_data)struct { mmc_uint_t header; const char data[(9)+1]; } _OMC_LIT_STRUCT6
= { ((((mmc_uint_t)9)<<(3))+((1<<(3+3))+5)), "allVars:\n"
}
;
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"controlVars:\n" "controlVars:\n"
30static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT7,13,_OMC_LIT7_data)struct { mmc_uint_t header; const char data[(13)+1]; } _OMC_LIT_STRUCT7
= { ((((mmc_uint_t)13)<<(3))+((1<<(3+3))+5)), "controlVars:\n"
}
;
31#define _OMC_LIT7((void*)((char*)(&(_OMC_LIT_STRUCT7).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT7)((void*)((char*)(&(_OMC_LIT_STRUCT7).header) + 3))
32#define _OMC_LIT8_data"diffCrefs:\n" "diffCrefs:\n"
33static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT8,11,_OMC_LIT8_data)struct { mmc_uint_t header; const char data[(11)+1]; } _OMC_LIT_STRUCT8
= { ((((mmc_uint_t)11)<<(3))+((1<<(3+3))+5)), "diffCrefs:\n"
}
;
34#define _OMC_LIT8((void*)((char*)(&(_OMC_LIT_STRUCT8).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT8)((void*)((char*)(&(_OMC_LIT_STRUCT8).header) + 3))
35#define _OMC_LIT9_data"\n" "\n"
36static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT9,1,_OMC_LIT9_data)struct { mmc_uint_t header; const char data[(1)+1]; } _OMC_LIT_STRUCT9
= { ((((mmc_uint_t)1)<<(3))+((1<<(3+3))+5)), "\n"
}
;
37#define _OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT9)((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3))
38static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT10,1,5)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT10
= { (((1) << 10) + (((5) & 255) << 2)),
{&ErrorTypes_MessageType_TRANSLATION__desc,}};
39#define _OMC_LIT10((void*)((char*)(&(_OMC_LIT_STRUCT10).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT10)((void*)((char*)(&(_OMC_LIT_STRUCT10).header) + 3))
40static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT11,1,4)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT11
= { (((1) << 10) + (((4) & 255) << 2)),
{&ErrorTypes_Severity_ERROR__desc,}};
41#define _OMC_LIT11((void*)((char*)(&(_OMC_LIT_STRUCT11).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT11)((void*)((char*)(&(_OMC_LIT_STRUCT11).header) + 3))
42#define _OMC_LIT12_data"Internal error %s" "Internal error %s"
43static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT12,17,_OMC_LIT12_data)struct { mmc_uint_t header; const char data[(17)+1]; } _OMC_LIT_STRUCT12
= { ((((mmc_uint_t)17)<<(3))+((1<<(3+3))+5)), "Internal error %s"
}
;
44#define _OMC_LIT12((void*)((char*)(&(_OMC_LIT_STRUCT12).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT12)((void*)((char*)(&(_OMC_LIT_STRUCT12).header) + 3))
45static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT13,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT13
= { (((2) << 10) + (((3) & 255) << 2)),
{&Gettext_TranslatableContent_gettext__desc,_OMC_LIT12((void*)((char*)(&(_OMC_LIT_STRUCT12).header) + 3))}};
46#define _OMC_LIT13((void*)((char*)(&(_OMC_LIT_STRUCT13).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT13)((void*)((char*)(&(_OMC_LIT_STRUCT13).header) + 3))
47static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT14,5,3)struct { mmc_uint_t header; const void *data[5]; } _OMC_LIT_STRUCT14
= { (((5) << 10) + (((3) & 255) << 2)),
{&ErrorTypes_Message_MESSAGE__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(63))((void*)(((((mmc_uint_t) (63)) << 1)+0))),_OMC_LIT10((void*)((char*)(&(_OMC_LIT_STRUCT10).header) + 3)),_OMC_LIT11((void*)((char*)(&(_OMC_LIT_STRUCT11).header) + 3)),_OMC_LIT13((void*)((char*)(&(_OMC_LIT_STRUCT13).header) + 3))}};
48#define _OMC_LIT14((void*)((char*)(&(_OMC_LIT_STRUCT14).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT14)((void*)((char*)(&(_OMC_LIT_STRUCT14).header) + 3))
49#define _OMC_LIT15_data"Differentiate.addElementVars2Dep failed" "Differentiate.addElementVars2Dep failed"
50static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT15,39,_OMC_LIT15_data)struct { mmc_uint_t header; const char data[(39)+1]; } _OMC_LIT_STRUCT15
= { ((((mmc_uint_t)39)<<(3))+((1<<(3+3))+5)), "Differentiate.addElementVars2Dep failed"
}
;
51#define _OMC_LIT15((void*)((char*)(&(_OMC_LIT_STRUCT15).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT15)((void*)((char*)(&(_OMC_LIT_STRUCT15).header) + 3))
52static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT16,2,1)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT16
= { (((2) << 10) + (((1) & 255) << 2)),
{_OMC_LIT15((void*)((char*)(&(_OMC_LIT_STRUCT15).header) + 3)),MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))}};
53#define _OMC_LIT16((void*)((char*)(&(_OMC_LIT_STRUCT16).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT16)((void*)((char*)(&(_OMC_LIT_STRUCT16).header) + 3))
54#define _OMC_LIT17_data"failtrace" "failtrace"
55static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT17,9,_OMC_LIT17_data)struct { mmc_uint_t header; const char data[(9)+1]; } _OMC_LIT_STRUCT17
= { ((((mmc_uint_t)9)<<(3))+((1<<(3+3))+5)), "failtrace"
}
;
56#define _OMC_LIT17((void*)((char*)(&(_OMC_LIT_STRUCT17).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT17)((void*)((char*)(&(_OMC_LIT_STRUCT17).header) + 3))
57#define _OMC_LIT18_data"Sets whether to print a failtrace or not." "Sets whether to print a failtrace or not."
58static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT18,41,_OMC_LIT18_data)struct { mmc_uint_t header; const char data[(41)+1]; } _OMC_LIT_STRUCT18
= { ((((mmc_uint_t)41)<<(3))+((1<<(3+3))+5)), "Sets whether to print a failtrace or not."
}
;
59#define _OMC_LIT18((void*)((char*)(&(_OMC_LIT_STRUCT18).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT18)((void*)((char*)(&(_OMC_LIT_STRUCT18).header) + 3))
60static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT19,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT19
= { (((2) << 10) + (((3) & 255) << 2)),
{&Gettext_TranslatableContent_gettext__desc,_OMC_LIT18((void*)((char*)(&(_OMC_LIT_STRUCT18).header) + 3))}};
61#define _OMC_LIT19((void*)((char*)(&(_OMC_LIT_STRUCT19).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT19)((void*)((char*)(&(_OMC_LIT_STRUCT19).header) + 3))
62static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT20,5,3)struct { mmc_uint_t header; const void *data[5]; } _OMC_LIT_STRUCT20
= { (((5) << 10) + (((3) & 255) << 2)),
{&Flags_DebugFlag_DEBUG__FLAG__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(1))((void*)(((((mmc_uint_t) (1)) << 1)+0))),_OMC_LIT17((void*)((char*)(&(_OMC_LIT_STRUCT17).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),_OMC_LIT19((void*)((char*)(&(_OMC_LIT_STRUCT19).header) + 3))}};
63#define _OMC_LIT20((void*)((char*)(&(_OMC_LIT_STRUCT20).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT20)((void*)((char*)(&(_OMC_LIT_STRUCT20).header) + 3))
64#define _OMC_LIT21_data"- Differentiate.lowerVarsElementVars failed." "- Differentiate.lowerVarsElementVars failed."
65static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT21,44,_OMC_LIT21_data)struct { mmc_uint_t header; const char data[(44)+1]; } _OMC_LIT_STRUCT21
= { ((((mmc_uint_t)44)<<(3))+((1<<(3+3))+5)), "- Differentiate.lowerVarsElementVars failed."
}
;
66#define _OMC_LIT21((void*)((char*)(&(_OMC_LIT_STRUCT21).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT21)((void*)((char*)(&(_OMC_LIT_STRUCT21).header) + 3))
67#define _OMC_LIT22_data"-Differentiate.getFunctionMapper1 failed\n" "-Differentiate.getFunctionMapper1 failed\n"
68static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT22,41,_OMC_LIT22_data)struct { mmc_uint_t header; const char data[(41)+1]; } _OMC_LIT_STRUCT22
= { ((((mmc_uint_t)41)<<(3))+((1<<(3+3))+5)), "-Differentiate.getFunctionMapper1 failed\n"
}
;
69#define _OMC_LIT22((void*)((char*)(&(_OMC_LIT_STRUCT22).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT22)((void*)((char*)(&(_OMC_LIT_STRUCT22).header) + 3))
70#define _OMC_LIT23_data"." "."
71static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT23,1,_OMC_LIT23_data)struct { mmc_uint_t header; const char data[(1)+1]; } _OMC_LIT_STRUCT23
= { ((((mmc_uint_t)1)<<(3))+((1<<(3+3))+5)), "."
}
;
72#define _OMC_LIT23((void*)((char*)(&(_OMC_LIT_STRUCT23).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT23)((void*)((char*)(&(_OMC_LIT_STRUCT23).header) + 3))
73#define _OMC_LIT24_data"-Differentiate.getFunctionMapper failed for function " "-Differentiate.getFunctionMapper failed for function "
74static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT24,53,_OMC_LIT24_data)struct { mmc_uint_t header; const char data[(53)+1]; } _OMC_LIT_STRUCT24
= { ((((mmc_uint_t)53)<<(3))+((1<<(3+3))+5)), "-Differentiate.getFunctionMapper failed for function "
}
;
75#define _OMC_LIT24((void*)((char*)(&(_OMC_LIT_STRUCT24).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT24)((void*)((char*)(&(_OMC_LIT_STRUCT24).header) + 3))
76#define _OMC_LIT25_data"-Differentiate.checkDerFunctionConds failed" "-Differentiate.checkDerFunctionConds failed"
77static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT25,43,_OMC_LIT25_data)struct { mmc_uint_t header; const char data[(43)+1]; } _OMC_LIT_STRUCT25
= { ((((mmc_uint_t)43)<<(3))+((1<<(3+3))+5)), "-Differentiate.checkDerFunctionConds failed"
}
;
78#define _OMC_LIT25((void*)((char*)(&(_OMC_LIT_STRUCT25).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT25)((void*)((char*)(&(_OMC_LIT_STRUCT25).header) + 3))
79#define _OMC_LIT26_data"-Differentiate.checkDerivativeFunctionInputs failed\n" "-Differentiate.checkDerivativeFunctionInputs failed\n"
80static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT26,52,_OMC_LIT26_data)struct { mmc_uint_t header; const char data[(52)+1]; } _OMC_LIT_STRUCT26
= { ((((mmc_uint_t)52)<<(3))+((1<<(3+3))+5)), "-Differentiate.checkDerivativeFunctionInputs failed\n"
}
;
81#define _OMC_LIT26((void*)((char*)(&(_OMC_LIT_STRUCT26).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT26)((void*)((char*)(&(_OMC_LIT_STRUCT26).header) + 3))
82static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT27,1,5)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT27
= { (((1) << 10) + (((5) & 255) << 2)),
{&AvlSetPath_Tree_EMPTY__desc,}};
83#define _OMC_LIT27((void*)((char*)(&(_OMC_LIT_STRUCT27).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT27)((void*)((char*)(&(_OMC_LIT_STRUCT27).header) + 3))
84static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT28,9,3)struct { mmc_uint_t header; const void *data[9]; } _OMC_LIT_STRUCT28
= { (((9) << 10) + (((3) & 255) << 2)),
{&BackendDAE_DifferentiateInputData_DIFFINPUTDATA__desc,MMC_REFSTRUCTLIT(mmc_none)((void*)((char*)(&(mmc_none).header) + 3)),MMC_REFSTRUCTLIT(mmc_none)((void*)((char*)(&(mmc_none).header) + 3)),MMC_REFSTRUCTLIT(mmc_none)((void*)((char*)(&(mmc_none).header) + 3)),MMC_REFSTRUCTLIT(mmc_none)((void*)((char*)(&(mmc_none).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_none)((void*)((char*)(&(mmc_none).header) + 3)),_OMC_LIT27((void*)((char*)(&(_OMC_LIT_STRUCT27).header) + 3))}};
85#define _OMC_LIT28((void*)((char*)(&(_OMC_LIT_STRUCT28).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT28)((void*)((char*)(&(_OMC_LIT_STRUCT28).header) + 3))
86static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT29,1,5)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT29
= { (((1) << 10) + (((5) & 255) << 2)),
{&BackendDAE_DifferentiationType_DIFFERENTIATION__FUNCTION__desc,}};
87#define _OMC_LIT29((void*)((char*)(&(_OMC_LIT_STRUCT29).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT29)((void*)((char*)(&(_OMC_LIT_STRUCT29).header) + 3))
88#define _OMC_LIT30_data"$DER" "$DER"
89static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT30,4,_OMC_LIT30_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT30
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "$DER"
}
;
90#define _OMC_LIT30((void*)((char*)(&(_OMC_LIT_STRUCT30).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT30)((void*)((char*)(&(_OMC_LIT_STRUCT30).header) + 3))
91#define _OMC_LIT31_data"### Differentiate differentiateFunctionCallPartial: \n" "### Differentiate differentiateFunctionCallPartial: \n"
92static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT31,53,_OMC_LIT31_data)struct { mmc_uint_t header; const char data[(53)+1]; } _OMC_LIT_STRUCT31
= { ((((mmc_uint_t)53)<<(3))+((1<<(3+3))+5)), "### Differentiate differentiateFunctionCallPartial: \n"
}
;
93#define _OMC_LIT31((void*)((char*)(&(_OMC_LIT_STRUCT31).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT31)((void*)((char*)(&(_OMC_LIT_STRUCT31).header) + 3))
94#define _OMC_LIT32_data"\n\n" "\n\n"
95static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT32,2,_OMC_LIT32_data)struct { mmc_uint_t header; const char data[(2)+1]; } _OMC_LIT_STRUCT32
= { ((((mmc_uint_t)2)<<(3))+((1<<(3+3))+5)), "\n\n"
}
;
96#define _OMC_LIT32((void*)((char*)(&(_OMC_LIT_STRUCT32).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT32)((void*)((char*)(&(_OMC_LIT_STRUCT32).header) + 3))
97#define _OMC_LIT33_data"debugDifferentiationVerbose" "debugDifferentiationVerbose"
98static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT33,27,_OMC_LIT33_data)struct { mmc_uint_t header; const char data[(27)+1]; } _OMC_LIT_STRUCT33
= { ((((mmc_uint_t)27)<<(3))+((1<<(3+3))+5)), "debugDifferentiationVerbose"
}
;
99#define _OMC_LIT33((void*)((char*)(&(_OMC_LIT_STRUCT33).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT33)((void*)((char*)(&(_OMC_LIT_STRUCT33).header) + 3))
100#define _OMC_LIT34_data"Dumps verbose debug output for the differentiation process." "Dumps verbose debug output for the differentiation process."
101static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT34,59,_OMC_LIT34_data)struct { mmc_uint_t header; const char data[(59)+1]; } _OMC_LIT_STRUCT34
= { ((((mmc_uint_t)59)<<(3))+((1<<(3+3))+5)), "Dumps verbose debug output for the differentiation process."
}
;
102#define _OMC_LIT34((void*)((char*)(&(_OMC_LIT_STRUCT34).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT34)((void*)((char*)(&(_OMC_LIT_STRUCT34).header) + 3))
103static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT35,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT35
= { (((2) << 10) + (((3) & 255) << 2)),
{&Gettext_TranslatableContent_gettext__desc,_OMC_LIT34((void*)((char*)(&(_OMC_LIT_STRUCT34).header) + 3))}};
104#define _OMC_LIT35((void*)((char*)(&(_OMC_LIT_STRUCT35).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT35)((void*)((char*)(&(_OMC_LIT_STRUCT35).header) + 3))
105static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT36,5,3)struct { mmc_uint_t header; const void *data[5]; } _OMC_LIT_STRUCT36
= { (((5) << 10) + (((3) & 255) << 2)),
{&Flags_DebugFlag_DEBUG__FLAG__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(146))((void*)(((((mmc_uint_t) (146)) << 1)+0))),_OMC_LIT33((void*)((char*)(&(_OMC_LIT_STRUCT33).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),_OMC_LIT35((void*)((char*)(&(_OMC_LIT_STRUCT35).header) + 3))}};
106#define _OMC_LIT36((void*)((char*)(&(_OMC_LIT_STRUCT36).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT36)((void*)((char*)(&(_OMC_LIT_STRUCT36).header) + 3))
107#define _OMC_LIT37_data"### Differentiate differentiateFunctionCallPartial stmts: \n" "### Differentiate differentiateFunctionCallPartial stmts: \n"
108static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT37,59,_OMC_LIT37_data)struct { mmc_uint_t header; const char data[(59)+1]; } _OMC_LIT_STRUCT37
= { ((((mmc_uint_t)59)<<(3))+((1<<(3+3))+5)), "### Differentiate differentiateFunctionCallPartial stmts: \n"
}
;
109#define _OMC_LIT37((void*)((char*)(&(_OMC_LIT_STRUCT37).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT37)((void*)((char*)(&(_OMC_LIT_STRUCT37).header) + 3))
110static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT38,1,4)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT38
= { (((1) << 10) + (((4) & 255) << 2)),
{&DAE_VarVisibility_PROTECTED__desc,}};
111#define _OMC_LIT38((void*)((char*)(&(_OMC_LIT_STRUCT38).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT38)((void*)((char*)(&(_OMC_LIT_STRUCT38).header) + 3))
112static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT39,1,5)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT39
= { (((1) << 10) + (((5) & 255) << 2)),
{&DAE_VarDirection_BIDIR__desc,}};
113#define _OMC_LIT39((void*)((char*)(&(_OMC_LIT_STRUCT39).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT39)((void*)((char*)(&(_OMC_LIT_STRUCT39).header) + 3))
114#define _OMC_LIT40_data"" ""
115static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT40,0,_OMC_LIT40_data)struct { mmc_uint_t header; const char data[(0)+1]; } _OMC_LIT_STRUCT40
= { ((((mmc_uint_t)0)<<(3))+((1<<(3+3))+5)), "" }
;
116#define _OMC_LIT40((void*)((char*)(&(_OMC_LIT_STRUCT40).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT40)((void*)((char*)(&(_OMC_LIT_STRUCT40).header) + 3))
117static const MMC_DEFREALLIT(_OMC_LIT_STRUCT41,0.0)struct mmc_real_lit _OMC_LIT_STRUCT41 = {0,(((8/8) << 10
) + 9),0.0}
;
118#define _OMC_LIT41((void*)((char*)(&(_OMC_LIT_STRUCT41).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT41)((void*)((char*)(&(_OMC_LIT_STRUCT41).header) + 3))
119static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT42,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT42
= { (((8) << 10) + (((3) & 255) << 2)),
{&SourceInfo_SOURCEINFO__desc,_OMC_LIT40((void*)((char*)(&(_OMC_LIT_STRUCT40).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_LIT41((void*)((char*)(&(_OMC_LIT_STRUCT41).header) + 3))}};
120#define _OMC_LIT42((void*)((char*)(&(_OMC_LIT_STRUCT42).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT42)((void*)((char*)(&(_OMC_LIT_STRUCT42).header) + 3))
121static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT43,1,4)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT43
= { (((1) << 10) + (((4) & 255) << 2)),
{&DAE_ComponentPrefix_NOCOMPPRE__desc,}};
122#define _OMC_LIT43((void*)((char*)(&(_OMC_LIT_STRUCT43).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT43)((void*)((char*)(&(_OMC_LIT_STRUCT43).header) + 3))
123static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT44,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT44
= { (((8) << 10) + (((3) & 255) << 2)),
{&DAE_ElementSource_SOURCE__desc,_OMC_LIT42((void*)((char*)(&(_OMC_LIT_STRUCT42).header) + 3)),MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3)),_OMC_LIT43((void*)((char*)(&(_OMC_LIT_STRUCT43).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))}};
124#define _OMC_LIT44((void*)((char*)(&(_OMC_LIT_STRUCT44).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT44)((void*)((char*)(&(_OMC_LIT_STRUCT44).header) + 3))
125#define _OMC_LIT45_data"\nDifferentiate.differentiatePartialFunction failed for function: " "\nDifferentiate.differentiatePartialFunction failed for function: "
126static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT45,65,_OMC_LIT45_data)struct { mmc_uint_t header; const char data[(65)+1]; } _OMC_LIT_STRUCT45
= { ((((mmc_uint_t)65)<<(3))+((1<<(3+3))+5)), "\nDifferentiate.differentiatePartialFunction failed for function: "
}
;
127#define _OMC_LIT45((void*)((char*)(&(_OMC_LIT_STRUCT45).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT45)((void*)((char*)(&(_OMC_LIT_STRUCT45).header) + 3))
128#define _OMC_LIT46_data"$" "$"
129static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT46,1,_OMC_LIT46_data)struct { mmc_uint_t header; const char data[(1)+1]; } _OMC_LIT_STRUCT46
= { ((((mmc_uint_t)1)<<(3))+((1<<(3+3))+5)), "$"
}
;
130#define _OMC_LIT46((void*)((char*)(&(_OMC_LIT_STRUCT46).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT46)((void*)((char*)(&(_OMC_LIT_STRUCT46).header) + 3))
131static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT47,2,4)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT47
= { (((2) << 10) + (((4) & 255) << 2)),
{&DAE_Type_T__REAL__desc,MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))}};
132#define _OMC_LIT47((void*)((char*)(&(_OMC_LIT_STRUCT47).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT47)((void*)((char*)(&(_OMC_LIT_STRUCT47).header) + 3))
133static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT48,4,4)struct { mmc_uint_t header; const void *data[4]; } _OMC_LIT_STRUCT48
= { (((4) << 10) + (((4) & 255) << 2)),
{&DAE_ComponentRef_CREF__IDENT__desc,_OMC_LIT46((void*)((char*)(&(_OMC_LIT_STRUCT46).header) + 3)),_OMC_LIT47((void*)((char*)(&(_OMC_LIT_STRUCT47).header) + 3)),MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))}};
134#define _OMC_LIT48((void*)((char*)(&(_OMC_LIT_STRUCT48).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT48)((void*)((char*)(&(_OMC_LIT_STRUCT48).header) + 3))
135static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT49,1,7)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT49
= { (((1) << 10) + (((7) & 255) << 2)),
{&BackendDAE_DifferentiationType_GENERIC__GRADIENT__desc,}};
136#define _OMC_LIT49((void*)((char*)(&(_OMC_LIT_STRUCT49).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT49)((void*)((char*)(&(_OMC_LIT_STRUCT49).header) + 3))
137#define _OMC_LIT50_data"### differentiated argument list:\n" "### differentiated argument list:\n"
138static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT50,34,_OMC_LIT50_data)struct { mmc_uint_t header; const char data[(34)+1]; } _OMC_LIT_STRUCT50
= { ((((mmc_uint_t)34)<<(3))+((1<<(3+3))+5)), "### differentiated argument list:\n"
}
;
139#define _OMC_LIT50((void*)((char*)(&(_OMC_LIT_STRUCT50).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT50)((void*)((char*)(&(_OMC_LIT_STRUCT50).header) + 3))
140#define _OMC_LIT51_data"Diffed ExpList: \n" "Diffed ExpList: \n"
141static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT51,17,_OMC_LIT51_data)struct { mmc_uint_t header; const char data[(17)+1]; } _OMC_LIT_STRUCT51
= { ((((mmc_uint_t)17)<<(3))+((1<<(3+3))+5)), "Diffed ExpList: \n"
}
;
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", " ", "
144static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT52,2,_OMC_LIT52_data)struct { mmc_uint_t header; const char data[(2)+1]; } _OMC_LIT_STRUCT52
= { ((((mmc_uint_t)2)<<(3))+((1<<(3+3))+5)), ", "
}
;
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"debugDifferentiation" "debugDifferentiation"
147static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT53,20,_OMC_LIT53_data)struct { mmc_uint_t header; const char data[(20)+1]; } _OMC_LIT_STRUCT53
= { ((((mmc_uint_t)20)<<(3))+((1<<(3+3))+5)), "debugDifferentiation"
}
;
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"Dumps debug output for the differentiation process." "Dumps debug output for the differentiation process."
150static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT54,51,_OMC_LIT54_data)struct { mmc_uint_t header; const char data[(51)+1]; } _OMC_LIT_STRUCT54
= { ((((mmc_uint_t)51)<<(3))+((1<<(3+3))+5)), "Dumps debug output for the differentiation process."
}
;
151#define _OMC_LIT54((void*)((char*)(&(_OMC_LIT_STRUCT54).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT54)((void*)((char*)(&(_OMC_LIT_STRUCT54).header) + 3))
152static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT55,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT55
= { (((2) << 10) + (((3) & 255) << 2)),
{&Gettext_TranslatableContent_gettext__desc,_OMC_LIT54((void*)((char*)(&(_OMC_LIT_STRUCT54).header) + 3))}};
153#define _OMC_LIT55((void*)((char*)(&(_OMC_LIT_STRUCT55).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT55)((void*)((char*)(&(_OMC_LIT_STRUCT55).header) + 3))
154static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT56,5,3)struct { mmc_uint_t header; const void *data[5]; } _OMC_LIT_STRUCT56
= { (((5) << 10) + (((3) & 255) << 2)),
{&Flags_DebugFlag_DEBUG__FLAG__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(145))((void*)(((((mmc_uint_t) (145)) << 1)+0))),_OMC_LIT53((void*)((char*)(&(_OMC_LIT_STRUCT53).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),_OMC_LIT55((void*)((char*)(&(_OMC_LIT_STRUCT55).header) + 3))}};
155#define _OMC_LIT56((void*)((char*)(&(_OMC_LIT_STRUCT56).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT56)((void*)((char*)(&(_OMC_LIT_STRUCT56).header) + 3))
156#define _OMC_LIT57_data";\n" ";\n"
157static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT57,2,_OMC_LIT57_data)struct { mmc_uint_t header; const char data[(2)+1]; } _OMC_LIT_STRUCT57
= { ((((mmc_uint_t)2)<<(3))+((1<<(3+3))+5)), ";\n"
}
;
158#define _OMC_LIT57((void*)((char*)(&(_OMC_LIT_STRUCT57).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT57)((void*)((char*)(&(_OMC_LIT_STRUCT57).header) + 3))
159#define _OMC_LIT58_data"Input warnings for function mapper2\n" "Input warnings for function mapper2\n"
160static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT58,36,_OMC_LIT58_data)struct { mmc_uint_t header; const char data[(36)+1]; } _OMC_LIT_STRUCT58
= { ((((mmc_uint_t)36)<<(3))+((1<<(3+3))+5)), "Input warnings for function mapper2\n"
}
;
161#define _OMC_LIT58((void*)((char*)(&(_OMC_LIT_STRUCT58).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT58)((void*)((char*)(&(_OMC_LIT_STRUCT58).header) + 3))
162static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT59,1,5)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT59
= { (((1) << 10) + (((5) & 255) << 2)),
{&ErrorTypes_Severity_WARNING__desc,}};
163#define _OMC_LIT59((void*)((char*)(&(_OMC_LIT_STRUCT59).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT59)((void*)((char*)(&(_OMC_LIT_STRUCT59).header) + 3))
164#define _OMC_LIT60_data"Function %s has not the expected inputs. Expected inputs are %s." "Function %s has not the expected inputs. Expected inputs are %s."
165static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT60,64,_OMC_LIT60_data)struct { mmc_uint_t header; const char data[(64)+1]; } _OMC_LIT_STRUCT60
= { ((((mmc_uint_t)64)<<(3))+((1<<(3+3))+5)), "Function %s has not the expected inputs. Expected inputs are %s."
}
;
166#define _OMC_LIT60((void*)((char*)(&(_OMC_LIT_STRUCT60).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT60)((void*)((char*)(&(_OMC_LIT_STRUCT60).header) + 3))
167static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT61,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT61
= { (((2) << 10) + (((3) & 255) << 2)),
{&Gettext_TranslatableContent_gettext__desc,_OMC_LIT60((void*)((char*)(&(_OMC_LIT_STRUCT60).header) + 3))}};
168#define _OMC_LIT61((void*)((char*)(&(_OMC_LIT_STRUCT61).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT61)((void*)((char*)(&(_OMC_LIT_STRUCT61).header) + 3))
169static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT62,5,3)struct { mmc_uint_t header; const void *data[5]; } _OMC_LIT_STRUCT62
= { (((5) << 10) + (((3) & 255) << 2)),
{&ErrorTypes_Message_MESSAGE__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(128))((void*)(((((mmc_uint_t) (128)) << 1)+0))),_OMC_LIT10((void*)((char*)(&(_OMC_LIT_STRUCT10).header) + 3)),_OMC_LIT59((void*)((char*)(&(_OMC_LIT_STRUCT59).header) + 3)),_OMC_LIT61((void*)((char*)(&(_OMC_LIT_STRUCT61).header) + 3))}};
170#define _OMC_LIT62((void*)((char*)(&(_OMC_LIT_STRUCT62).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT62)((void*)((char*)(&(_OMC_LIT_STRUCT62).header) + 3))
171#define _OMC_LIT63_data"### Differentiate function: \n" "### Differentiate function: \n"
172static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT63,29,_OMC_LIT63_data)struct { mmc_uint_t header; const char data[(29)+1]; } _OMC_LIT_STRUCT63
= { ((((mmc_uint_t)29)<<(3))+((1<<(3+3))+5)), "### Differentiate function: \n"
}
;
173#define _OMC_LIT63((void*)((char*)(&(_OMC_LIT_STRUCT63).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT63)((void*)((char*)(&(_OMC_LIT_STRUCT63).header) + 3))
174#define _OMC_LIT64_data"### Detailed arguments list: \n" "### Detailed arguments list: \n"
175static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT64,30,_OMC_LIT64_data)struct { mmc_uint_t header; const char data[(30)+1]; } _OMC_LIT_STRUCT64
= { ((((mmc_uint_t)30)<<(3))+((1<<(3+3))+5)), "### Detailed arguments list: \n"
}
;
176#define _OMC_LIT64((void*)((char*)(&(_OMC_LIT_STRUCT64).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT64)((void*)((char*)(&(_OMC_LIT_STRUCT64).header) + 3))
177#define _OMC_LIT65_data"### and argument types: \n" "### and argument types: \n"
178static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT65,25,_OMC_LIT65_data)struct { mmc_uint_t header; const char data[(25)+1]; } _OMC_LIT_STRUCT65
= { ((((mmc_uint_t)25)<<(3))+((1<<(3+3))+5)), "### and argument types: \n"
}
;
179#define _OMC_LIT65((void*)((char*)(&(_OMC_LIT_STRUCT65).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT65)((void*)((char*)(&(_OMC_LIT_STRUCT65).header) + 3))
180#define _OMC_LIT66_data" | " " | "
181static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT66,3,_OMC_LIT66_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT66
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), " | "
}
;
182#define _OMC_LIT66((void*)((char*)(&(_OMC_LIT_STRUCT66).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT66)((void*)((char*)(&(_OMC_LIT_STRUCT66).header) + 3))
183#define _OMC_LIT67_data"### and output type: \n" "### and output type: \n"
184static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT67,22,_OMC_LIT67_data)struct { mmc_uint_t header; const char data[(22)+1]; } _OMC_LIT_STRUCT67
= { ((((mmc_uint_t)22)<<(3))+((1<<(3+3))+5)), "### and output type: \n"
}
;
185#define _OMC_LIT67((void*)((char*)(&(_OMC_LIT_STRUCT67).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT67)((void*)((char*)(&(_OMC_LIT_STRUCT67).header) + 3))
186#define _OMC_LIT68_data"### Selected Arguments: \n" "### Selected Arguments: \n"
187static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT68,25,_OMC_LIT68_data)struct { mmc_uint_t header; const char data[(25)+1]; } _OMC_LIT_STRUCT68
= { ((((mmc_uint_t)25)<<(3))+((1<<(3+3))+5)), "### Selected Arguments: \n"
}
;
188#define _OMC_LIT68((void*)((char*)(&(_OMC_LIT_STRUCT68).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT68)((void*)((char*)(&(_OMC_LIT_STRUCT68).header) + 3))
189#define _OMC_LIT69_data"### Diffed ExpList: \n" "### Diffed ExpList: \n"
190static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT69,21,_OMC_LIT69_data)struct { mmc_uint_t header; const char data[(21)+1]; } _OMC_LIT_STRUCT69
= { ((((mmc_uint_t)21)<<(3))+((1<<(3+3))+5)), "### Diffed ExpList: \n"
}
;
191#define _OMC_LIT69((void*)((char*)(&(_OMC_LIT_STRUCT69).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT69)((void*)((char*)(&(_OMC_LIT_STRUCT69).header) + 3))
192static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT70,1,7)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT70
= { (((1) << 10) + (((7) & 255) << 2)),
{&DAE_InlineType_NO__INLINE__desc,}};
193#define _OMC_LIT70((void*)((char*)(&(_OMC_LIT_STRUCT70).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT70)((void*)((char*)(&(_OMC_LIT_STRUCT70).header) + 3))
194#define _OMC_LIT71_data"### differentiated result CALL :\n" "### differentiated result CALL :\n"
195static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT71,33,_OMC_LIT71_data)struct { mmc_uint_t header; const char data[(33)+1]; } _OMC_LIT_STRUCT71
= { ((((mmc_uint_t)33)<<(3))+((1<<(3+3))+5)), "### differentiated result CALL :\n"
}
;
196#define _OMC_LIT71((void*)((char*)(&(_OMC_LIT_STRUCT71).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT71)((void*)((char*)(&(_OMC_LIT_STRUCT71).header) + 3))
197#define _OMC_LIT72_data"Differentiate.differentiateFunctionCallPartial failed for " "Differentiate.differentiateFunctionCallPartial failed for "
198static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT72,58,_OMC_LIT72_data)struct { mmc_uint_t header; const char data[(58)+1]; } _OMC_LIT_STRUCT72
= { ((((mmc_uint_t)58)<<(3))+((1<<(3+3))+5)), "Differentiate.differentiateFunctionCallPartial failed for "
}
;
199#define _OMC_LIT72((void*)((char*)(&(_OMC_LIT_STRUCT72).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT72)((void*)((char*)(&(_OMC_LIT_STRUCT72).header) + 3))
200static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT73,1,3)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT73
= { (((1) << 10) + (((3) & 255) << 2)),
{&DAE_InlineType_NORM__INLINE__desc,}};
201#define _OMC_LIT73((void*)((char*)(&(_OMC_LIT_STRUCT73).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT73)((void*)((char*)(&(_OMC_LIT_STRUCT73).header) + 3))
202static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT74,1,6)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT74
= { (((1) << 10) + (((6) & 255) << 2)),
{&DAE_InlineType_DEFAULT__INLINE__desc,}};
203#define _OMC_LIT74((void*)((char*)(&(_OMC_LIT_STRUCT74).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT74)((void*)((char*)(&(_OMC_LIT_STRUCT74).header) + 3))
204static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT75,2,1)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT75
= { (((2) << 10) + (((1) & 255) << 2)),
{_OMC_LIT74((void*)((char*)(&(_OMC_LIT_STRUCT74).header) + 3)),MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))}};
205#define _OMC_LIT75((void*)((char*)(&(_OMC_LIT_STRUCT75).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT75)((void*)((char*)(&(_OMC_LIT_STRUCT75).header) + 3))
206static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT76,2,1)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT76
= { (((2) << 10) + (((1) & 255) << 2)),
{_OMC_LIT73((void*)((char*)(&(_OMC_LIT_STRUCT73).header) + 3)),_OMC_LIT75((void*)((char*)(&(_OMC_LIT_STRUCT75).header) + 3))}};
207#define _OMC_LIT76((void*)((char*)(&(_OMC_LIT_STRUCT76).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT76)((void*)((char*)(&(_OMC_LIT_STRUCT76).header) + 3))
208#define _OMC_LIT77_data"### Differentiate call\n " "### Differentiate call\n "
209static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT77,24,_OMC_LIT77_data)struct { mmc_uint_t header; const char data[(24)+1]; } _OMC_LIT_STRUCT77
= { ((((mmc_uint_t)24)<<(3))+((1<<(3+3))+5)), "### Differentiate call\n "
}
;
210#define _OMC_LIT77((void*)((char*)(&(_OMC_LIT_STRUCT77).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT77)((void*)((char*)(&(_OMC_LIT_STRUCT77).header) + 3))
211#define _OMC_LIT78_data" w.r.t. " " w.r.t. "
212static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT78,8,_OMC_LIT78_data)struct { mmc_uint_t header; const char data[(8)+1]; } _OMC_LIT_STRUCT78
= { ((((mmc_uint_t)8)<<(3))+((1<<(3+3))+5)), " w.r.t. "
}
;
213#define _OMC_LIT78((void*)((char*)(&(_OMC_LIT_STRUCT78).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT78)((void*)((char*)(&(_OMC_LIT_STRUCT78).header) + 3))
214#define _OMC_LIT79_data"### result output :\n" "### result output :\n"
215static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT79,20,_OMC_LIT79_data)struct { mmc_uint_t header; const char data[(20)+1]; } _OMC_LIT_STRUCT79
= { ((((mmc_uint_t)20)<<(3))+((1<<(3+3))+5)), "### result output :\n"
}
;
216#define _OMC_LIT79((void*)((char*)(&(_OMC_LIT_STRUCT79).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT79)((void*)((char*)(&(_OMC_LIT_STRUCT79).header) + 3))
217#define _OMC_LIT80_data"Differentiate.differentiateFunctionCall failed for " "Differentiate.differentiateFunctionCall failed for "
218static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT80,51,_OMC_LIT80_data)struct { mmc_uint_t header; const char data[(51)+1]; } _OMC_LIT_STRUCT80
= { ((((mmc_uint_t)51)<<(3))+((1<<(3+3))+5)), "Differentiate.differentiateFunctionCall failed for "
}
;
219#define _OMC_LIT80((void*)((char*)(&(_OMC_LIT_STRUCT80).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT80)((void*)((char*)(&(_OMC_LIT_STRUCT80).header) + 3))
220#define _OMC_LIT81_data"log" "log"
221static 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)), "log"
}
;
222#define _OMC_LIT81((void*)((char*)(&(_OMC_LIT_STRUCT81).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT81)((void*)((char*)(&(_OMC_LIT_STRUCT81).header) + 3))
223static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT82,2,4)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT82
= { (((2) << 10) + (((4) & 255) << 2)),
{&DAE_Exp_RCONST__desc,_OMC_LIT41((void*)((char*)(&(_OMC_LIT_STRUCT41).header) + 3))}};
224#define _OMC_LIT82((void*)((char*)(&(_OMC_LIT_STRUCT82).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT82)((void*)((char*)(&(_OMC_LIT_STRUCT82).header) + 3))
225static const MMC_DEFREALLIT(_OMC_LIT_STRUCT83,1.0)struct mmc_real_lit _OMC_LIT_STRUCT83 = {0,(((8/8) << 10
) + 9),1.0}
;
226#define _OMC_LIT83((void*)((char*)(&(_OMC_LIT_STRUCT83).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT83)((void*)((char*)(&(_OMC_LIT_STRUCT83).header) + 3))
227static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT84,2,4)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT84
= { (((2) << 10) + (((4) & 255) << 2)),
{&DAE_Exp_RCONST__desc,_OMC_LIT83((void*)((char*)(&(_OMC_LIT_STRUCT83).header) + 3))}};
228#define _OMC_LIT84((void*)((char*)(&(_OMC_LIT_STRUCT84).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT84)((void*)((char*)(&(_OMC_LIT_STRUCT84).header) + 3))
229#define _OMC_LIT85_data"\n- Function differentiateBinary failed. differentiateExp " "\n- Function differentiateBinary failed. differentiateExp "
230static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT85,57,_OMC_LIT85_data)struct { mmc_uint_t header; const char data[(57)+1]; } _OMC_LIT_STRUCT85
= { ((((mmc_uint_t)57)<<(3))+((1<<(3+3))+5)), "\n- Function differentiateBinary failed. differentiateExp "
}
;
231#define _OMC_LIT85((void*)((char*)(&(_OMC_LIT_STRUCT85).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT85)((void*)((char*)(&(_OMC_LIT_STRUCT85).header) + 3))
232#define _OMC_LIT86_data" w.r.t: " " w.r.t: "
233static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT86,8,_OMC_LIT86_data)struct { mmc_uint_t header; const char data[(8)+1]; } _OMC_LIT_STRUCT86
= { ((((mmc_uint_t)8)<<(3))+((1<<(3+3))+5)), " w.r.t: "
}
;
234#define _OMC_LIT86((void*)((char*)(&(_OMC_LIT_STRUCT86).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT86)((void*)((char*)(&(_OMC_LIT_STRUCT86).header) + 3))
235#define _OMC_LIT87_data" failed\n" " failed\n"
236static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT87,8,_OMC_LIT87_data)struct { mmc_uint_t header; const char data[(8)+1]; } _OMC_LIT_STRUCT87
= { ((((mmc_uint_t)8)<<(3))+((1<<(3+3))+5)), " failed\n"
}
;
237#define _OMC_LIT87((void*)((char*)(&(_OMC_LIT_STRUCT87).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT87)((void*)((char*)(&(_OMC_LIT_STRUCT87).header) + 3))
238static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT88,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT88
= { (((2) << 10) + (((3) & 255) << 2)),
{&DAE_Exp_ICONST__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(1))((void*)(((((mmc_uint_t) (1)) << 1)+0)))}};
239#define _OMC_LIT88((void*)((char*)(&(_OMC_LIT_STRUCT88).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT88)((void*)((char*)(&(_OMC_LIT_STRUCT88).header) + 3))
240#define _OMC_LIT89_data"smooth" "smooth"
241static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT89,6,_OMC_LIT89_data)struct { mmc_uint_t header; const char data[(6)+1]; } _OMC_LIT_STRUCT89
= { ((((mmc_uint_t)6)<<(3))+((1<<(3+3))+5)), "smooth"
}
;
242#define _OMC_LIT89((void*)((char*)(&(_OMC_LIT_STRUCT89).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT89)((void*)((char*)(&(_OMC_LIT_STRUCT89).header) + 3))
243#define _OMC_LIT90_data"noEvent" "noEvent"
244static 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)), "noEvent"
}
;
245#define _OMC_LIT90((void*)((char*)(&(_OMC_LIT_STRUCT90).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT90)((void*)((char*)(&(_OMC_LIT_STRUCT90).header) + 3))
246#define _OMC_LIT91_data"cross" "cross"
247static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT91,5,_OMC_LIT91_data)struct { mmc_uint_t header; const char data[(5)+1]; } _OMC_LIT_STRUCT91
= { ((((mmc_uint_t)5)<<(3))+((1<<(3+3))+5)), "cross"
}
;
248#define _OMC_LIT91((void*)((char*)(&(_OMC_LIT_STRUCT91).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT91)((void*)((char*)(&(_OMC_LIT_STRUCT91).header) + 3))
249static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT92,2,4)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT92
= { (((2) << 10) + (((4) & 255) << 2)),
{&Absyn_Path_IDENT__desc,_OMC_LIT90((void*)((char*)(&(_OMC_LIT_STRUCT90).header) + 3))}};
250#define _OMC_LIT92((void*)((char*)(&(_OMC_LIT_STRUCT92).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT92)((void*)((char*)(&(_OMC_LIT_STRUCT92).header) + 3))
251static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT93,2,6)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT93
= { (((2) << 10) + (((6) & 255) << 2)),
{&DAE_Type_T__BOOL__desc,MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))}};
252#define _OMC_LIT93((void*)((char*)(&(_OMC_LIT_STRUCT93).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT93)((void*)((char*)(&(_OMC_LIT_STRUCT93).header) + 3))
253static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT94,1,3)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT94
= { (((1) << 10) + (((3) & 255) << 2)),
{&DAE_TailCall_NO__TAIL__desc,}};
254#define _OMC_LIT94((void*)((char*)(&(_OMC_LIT_STRUCT94).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT94)((void*)((char*)(&(_OMC_LIT_STRUCT94).header) + 3))
255static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT95,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT95
= { (((8) << 10) + (((3) & 255) << 2)),
{&DAE_CallAttributes_CALL__ATTR__desc,_OMC_LIT93((void*)((char*)(&(_OMC_LIT_STRUCT93).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(1))((void*)(((((mmc_uint_t) (1)) << 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_LIT70((void*)((char*)(&(_OMC_LIT_STRUCT70).header) + 3)),_OMC_LIT94((void*)((char*)(&(_OMC_LIT_STRUCT94).header) + 3))}};
256#define _OMC_LIT95((void*)((char*)(&(_OMC_LIT_STRUCT95).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT95)((void*)((char*)(&(_OMC_LIT_STRUCT95).header) + 3))
257#define _OMC_LIT96_data"floor" "floor"
258static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT96,5,_OMC_LIT96_data)struct { mmc_uint_t header; const char data[(5)+1]; } _OMC_LIT_STRUCT96
= { ((((mmc_uint_t)5)<<(3))+((1<<(3+3))+5)), "floor"
}
;
259#define _OMC_LIT96((void*)((char*)(&(_OMC_LIT_STRUCT96).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT96)((void*)((char*)(&(_OMC_LIT_STRUCT96).header) + 3))
260#define _OMC_LIT97_data"div" "div"
261static 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)), "div"
}
;
262#define _OMC_LIT97((void*)((char*)(&(_OMC_LIT_STRUCT97).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT97)((void*)((char*)(&(_OMC_LIT_STRUCT97).header) + 3))
263#define _OMC_LIT98_data"atan2" "atan2"
264static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT98,5,_OMC_LIT98_data)struct { mmc_uint_t header; const char data[(5)+1]; } _OMC_LIT_STRUCT98
= { ((((mmc_uint_t)5)<<(3))+((1<<(3+3))+5)), "atan2"
}
;
265#define _OMC_LIT98((void*)((char*)(&(_OMC_LIT_STRUCT98).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT98)((void*)((char*)(&(_OMC_LIT_STRUCT98).header) + 3))
266#define _OMC_LIT99_data"semiLinear" "semiLinear"
267static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT99,10,_OMC_LIT99_data)struct { mmc_uint_t header; const char data[(10)+1]; } _OMC_LIT_STRUCT99
= { ((((mmc_uint_t)10)<<(3))+((1<<(3+3))+5)), "semiLinear"
}
;
268#define _OMC_LIT99((void*)((char*)(&(_OMC_LIT_STRUCT99).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT99)((void*)((char*)(&(_OMC_LIT_STRUCT99).header) + 3))
269#define _OMC_LIT100_data"max" "max"
270static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT100,3,_OMC_LIT100_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT100
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "max"
}
;
271#define _OMC_LIT100((void*)((char*)(&(_OMC_LIT_STRUCT100).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT100)((void*)((char*)(&(_OMC_LIT_STRUCT100).header) + 3))
272#define _OMC_LIT101_data"min" "min"
273static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT101,3,_OMC_LIT101_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT101
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "min"
}
;
274#define _OMC_LIT101((void*)((char*)(&(_OMC_LIT_STRUCT101).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT101)((void*)((char*)(&(_OMC_LIT_STRUCT101).header) + 3))
275#define _OMC_LIT102_data"mod" "mod"
276static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT102,3,_OMC_LIT102_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT102
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "mod"
}
;
277#define _OMC_LIT102((void*)((char*)(&(_OMC_LIT_STRUCT102).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT102)((void*)((char*)(&(_OMC_LIT_STRUCT102).header) + 3))
278#define _OMC_LIT103_data"rem" "rem"
279static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT103,3,_OMC_LIT103_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT103
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "rem"
}
;
280#define _OMC_LIT103((void*)((char*)(&(_OMC_LIT_STRUCT103).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT103)((void*)((char*)(&(_OMC_LIT_STRUCT103).header) + 3))
281#define _OMC_LIT104_data"sample" "sample"
282static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT104,6,_OMC_LIT104_data)struct { mmc_uint_t header; const char data[(6)+1]; } _OMC_LIT_STRUCT104
= { ((((mmc_uint_t)6)<<(3))+((1<<(3+3))+5)), "sample"
}
;
283#define _OMC_LIT104((void*)((char*)(&(_OMC_LIT_STRUCT104).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT104)((void*)((char*)(&(_OMC_LIT_STRUCT104).header) + 3))
284#define _OMC_LIT105_data"ceil" "ceil"
285static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT105,4,_OMC_LIT105_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT105
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "ceil"
}
;
286#define _OMC_LIT105((void*)((char*)(&(_OMC_LIT_STRUCT105).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT105)((void*)((char*)(&(_OMC_LIT_STRUCT105).header) + 3))
287#define _OMC_LIT106_data"integer" "integer"
288static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT106,7,_OMC_LIT106_data)struct { mmc_uint_t header; const char data[(7)+1]; } _OMC_LIT_STRUCT106
= { ((((mmc_uint_t)7)<<(3))+((1<<(3+3))+5)), "integer"
}
;
289#define _OMC_LIT106((void*)((char*)(&(_OMC_LIT_STRUCT106).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT106)((void*)((char*)(&(_OMC_LIT_STRUCT106).header) + 3))
290#define _OMC_LIT107_data"cos" "cos"
291static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT107,3,_OMC_LIT107_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT107
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "cos"
}
;
292#define _OMC_LIT107((void*)((char*)(&(_OMC_LIT_STRUCT107).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT107)((void*)((char*)(&(_OMC_LIT_STRUCT107).header) + 3))
293#define _OMC_LIT108_data"sin" "sin"
294static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT108,3,_OMC_LIT108_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT108
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "sin"
}
;
295#define _OMC_LIT108((void*)((char*)(&(_OMC_LIT_STRUCT108).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT108)((void*)((char*)(&(_OMC_LIT_STRUCT108).header) + 3))
296static const MMC_DEFREALLIT(_OMC_LIT_STRUCT109,2.0)struct mmc_real_lit _OMC_LIT_STRUCT109 = {0,(((8/8) << 10
) + 9),2.0}
;
297#define _OMC_LIT109((void*)((char*)(&(_OMC_LIT_STRUCT109).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT109)((void*)((char*)(&(_OMC_LIT_STRUCT109).header) + 3))
298static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT110,2,4)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT110
= { (((2) << 10) + (((4) & 255) << 2)),
{&DAE_Exp_RCONST__desc,_OMC_LIT109((void*)((char*)(&(_OMC_LIT_STRUCT109).header) + 3))}};
299#define _OMC_LIT110((void*)((char*)(&(_OMC_LIT_STRUCT110).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT110)((void*)((char*)(&(_OMC_LIT_STRUCT110).header) + 3))
300#define _OMC_LIT111_data"sqrt" "sqrt"
301static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT111,4,_OMC_LIT111_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT111
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "sqrt"
}
;
302#define _OMC_LIT111((void*)((char*)(&(_OMC_LIT_STRUCT111).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT111)((void*)((char*)(&(_OMC_LIT_STRUCT111).header) + 3))
303#define _OMC_LIT112_data"cosh" "cosh"
304static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT112,4,_OMC_LIT112_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT112
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "cosh"
}
;
305#define _OMC_LIT112((void*)((char*)(&(_OMC_LIT_STRUCT112).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT112)((void*)((char*)(&(_OMC_LIT_STRUCT112).header) + 3))
306#define _OMC_LIT113_data"sinh" "sinh"
307static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT113,4,_OMC_LIT113_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT113
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "sinh"
}
;
308#define _OMC_LIT113((void*)((char*)(&(_OMC_LIT_STRUCT113).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT113)((void*)((char*)(&(_OMC_LIT_STRUCT113).header) + 3))
309#define _OMC_LIT114_data"exp" "exp"
310static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT114,3,_OMC_LIT114_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT114
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "exp"
}
;
311#define _OMC_LIT114((void*)((char*)(&(_OMC_LIT_STRUCT114).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT114)((void*)((char*)(&(_OMC_LIT_STRUCT114).header) + 3))
312static const MMC_DEFREALLIT(_OMC_LIT_STRUCT115,10.0)struct mmc_real_lit _OMC_LIT_STRUCT115 = {0,(((8/8) << 10
) + 9),10.0}
;
313#define _OMC_LIT115((void*)((char*)(&(_OMC_LIT_STRUCT115).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT115)((void*)((char*)(&(_OMC_LIT_STRUCT115).header) + 3))
314static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT116,2,4)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT116
= { (((2) << 10) + (((4) & 255) << 2)),
{&DAE_Exp_RCONST__desc,_OMC_LIT115((void*)((char*)(&(_OMC_LIT_STRUCT115).header) + 3))}};
315#define _OMC_LIT116((void*)((char*)(&(_OMC_LIT_STRUCT116).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT116)((void*)((char*)(&(_OMC_LIT_STRUCT116).header) + 3))
316static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT117,2,1)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT117
= { (((2) << 10) + (((1) & 255) << 2)),
{_OMC_LIT116((void*)((char*)(&(_OMC_LIT_STRUCT116).header) + 3)),MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))}};
317#define _OMC_LIT117((void*)((char*)(&(_OMC_LIT_STRUCT117).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT117)((void*)((char*)(&(_OMC_LIT_STRUCT117).header) + 3))
318#define _OMC_LIT118_data"sign" "sign"
319static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT118,4,_OMC_LIT118_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT118
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "sign"
}
;
320#define _OMC_LIT118((void*)((char*)(&(_OMC_LIT_STRUCT118).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT118)((void*)((char*)(&(_OMC_LIT_STRUCT118).header) + 3))
321#define _OMC_LIT119_data"transpose" "transpose"
322static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT119,9,_OMC_LIT119_data)struct { mmc_uint_t header; const char data[(9)+1]; } _OMC_LIT_STRUCT119
= { ((((mmc_uint_t)9)<<(3))+((1<<(3+3))+5)), "transpose"
}
;
323#define _OMC_LIT119((void*)((char*)(&(_OMC_LIT_STRUCT119).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT119)((void*)((char*)(&(_OMC_LIT_STRUCT119).header) + 3))
324#define _OMC_LIT120_data"sum" "sum"
325static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT120,3,_OMC_LIT120_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT120
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "sum"
}
;
326#define _OMC_LIT120((void*)((char*)(&(_OMC_LIT_STRUCT120).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT120)((void*)((char*)(&(_OMC_LIT_STRUCT120).header) + 3))
327#define _OMC_LIT121_data"pre" "pre"
328static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT121,3,_OMC_LIT121_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT121
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "pre"
}
;
329#define _OMC_LIT121((void*)((char*)(&(_OMC_LIT_STRUCT121).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT121)((void*)((char*)(&(_OMC_LIT_STRUCT121).header) + 3))
330#define _OMC_LIT122_data"previous" "previous"
331static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT122,8,_OMC_LIT122_data)struct { mmc_uint_t header; const char data[(8)+1]; } _OMC_LIT_STRUCT122
= { ((((mmc_uint_t)8)<<(3))+((1<<(3+3))+5)), "previous"
}
;
332#define _OMC_LIT122((void*)((char*)(&(_OMC_LIT_STRUCT122).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT122)((void*)((char*)(&(_OMC_LIT_STRUCT122).header) + 3))
333#define _OMC_LIT123_data"$getPart" "$getPart"
334static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT123,8,_OMC_LIT123_data)struct { mmc_uint_t header; const char data[(8)+1]; } _OMC_LIT_STRUCT123
= { ((((mmc_uint_t)8)<<(3))+((1<<(3+3))+5)), "$getPart"
}
;
335#define _OMC_LIT123((void*)((char*)(&(_OMC_LIT_STRUCT123).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT123)((void*)((char*)(&(_OMC_LIT_STRUCT123).header) + 3))
336#define _OMC_LIT124_data"firstTick" "firstTick"
337static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT124,9,_OMC_LIT124_data)struct { mmc_uint_t header; const char data[(9)+1]; } _OMC_LIT_STRUCT124
= { ((((mmc_uint_t)9)<<(3))+((1<<(3+3))+5)), "firstTick"
}
;
338#define _OMC_LIT124((void*)((char*)(&(_OMC_LIT_STRUCT124).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT124)((void*)((char*)(&(_OMC_LIT_STRUCT124).header) + 3))
339#define _OMC_LIT125_data"interval" "interval"
340static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT125,8,_OMC_LIT125_data)struct { mmc_uint_t header; const char data[(8)+1]; } _OMC_LIT_STRUCT125
= { ((((mmc_uint_t)8)<<(3))+((1<<(3+3))+5)), "interval"
}
;
341#define _OMC_LIT125((void*)((char*)(&(_OMC_LIT_STRUCT125).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT125)((void*)((char*)(&(_OMC_LIT_STRUCT125).header) + 3))
342#define _OMC_LIT126_data"tan" "tan"
343static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT126,3,_OMC_LIT126_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT126
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "tan"
}
;
344#define _OMC_LIT126((void*)((char*)(&(_OMC_LIT_STRUCT126).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT126)((void*)((char*)(&(_OMC_LIT_STRUCT126).header) + 3))
345#define _OMC_LIT127_data"asin" "asin"
346static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT127,4,_OMC_LIT127_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT127
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "asin"
}
;
347#define _OMC_LIT127((void*)((char*)(&(_OMC_LIT_STRUCT127).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT127)((void*)((char*)(&(_OMC_LIT_STRUCT127).header) + 3))
348#define _OMC_LIT128_data"acos" "acos"
349static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT128,4,_OMC_LIT128_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT128
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "acos"
}
;
350#define _OMC_LIT128((void*)((char*)(&(_OMC_LIT_STRUCT128).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT128)((void*)((char*)(&(_OMC_LIT_STRUCT128).header) + 3))
351#define _OMC_LIT129_data"atan" "atan"
352static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT129,4,_OMC_LIT129_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT129
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "atan"
}
;
353#define _OMC_LIT129((void*)((char*)(&(_OMC_LIT_STRUCT129).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT129)((void*)((char*)(&(_OMC_LIT_STRUCT129).header) + 3))
354#define _OMC_LIT130_data"tanh" "tanh"
355static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT130,4,_OMC_LIT130_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT130
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "tanh"
}
;
356#define _OMC_LIT130((void*)((char*)(&(_OMC_LIT_STRUCT130).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT130)((void*)((char*)(&(_OMC_LIT_STRUCT130).header) + 3))
357#define _OMC_LIT131_data"log10" "log10"
358static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT131,5,_OMC_LIT131_data)struct { mmc_uint_t header; const char data[(5)+1]; } _OMC_LIT_STRUCT131
= { ((((mmc_uint_t)5)<<(3))+((1<<(3+3))+5)), "log10"
}
;
359#define _OMC_LIT131((void*)((char*)(&(_OMC_LIT_STRUCT131).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT131)((void*)((char*)(&(_OMC_LIT_STRUCT131).header) + 3))
360#define _OMC_LIT132_data"abs" "abs"
361static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT132,3,_OMC_LIT132_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT132
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "abs"
}
;
362#define _OMC_LIT132((void*)((char*)(&(_OMC_LIT_STRUCT132).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT132)((void*)((char*)(&(_OMC_LIT_STRUCT132).header) + 3))
363#define _OMC_LIT133_data"$CLKPRE" "$CLKPRE"
364static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT133,7,_OMC_LIT133_data)struct { mmc_uint_t header; const char data[(7)+1]; } _OMC_LIT_STRUCT133
= { ((((mmc_uint_t)7)<<(3))+((1<<(3+3))+5)), "$CLKPRE"
}
;
365#define _OMC_LIT133((void*)((char*)(&(_OMC_LIT_STRUCT133).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT133)((void*)((char*)(&(_OMC_LIT_STRUCT133).header) + 3))
366static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT134,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT134
= { (((2) << 10) + (((3) & 255) << 2)),
{&DAE_Exp_ICONST__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(2))((void*)(((((mmc_uint_t) (2)) << 1)+0)))}};
367#define _OMC_LIT134((void*)((char*)(&(_OMC_LIT_STRUCT134).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT134)((void*)((char*)(&(_OMC_LIT_STRUCT134).header) + 3))
368static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT135,2,1)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT135
= { (((2) << 10) + (((1) & 255) << 2)),
{_OMC_LIT73((void*)((char*)(&(_OMC_LIT_STRUCT73).header) + 3)),MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))}};
369#define _OMC_LIT135((void*)((char*)(&(_OMC_LIT_STRUCT135).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT135)((void*)((char*)(&(_OMC_LIT_STRUCT135).header) + 3))
370#define _OMC_LIT136_data"\n- Function differentiateCalls failed. differentiateExp " "\n- Function differentiateCalls failed. differentiateExp "
371static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT136,56,_OMC_LIT136_data)struct { mmc_uint_t header; const char data[(56)+1]; } _OMC_LIT_STRUCT136
= { ((((mmc_uint_t)56)<<(3))+((1<<(3+3))+5)), "\n- Function differentiateCalls failed. differentiateExp "
}
;
372#define _OMC_LIT136((void*)((char*)(&(_OMC_LIT_STRUCT136).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT136)((void*)((char*)(&(_OMC_LIT_STRUCT136).header) + 3))
373#define _OMC_LIT137_data"homotopy" "homotopy"
374static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT137,8,_OMC_LIT137_data)struct { mmc_uint_t header; const char data[(8)+1]; } _OMC_LIT_STRUCT137
= { ((((mmc_uint_t)8)<<(3))+((1<<(3+3))+5)), "homotopy"
}
;
375#define _OMC_LIT137((void*)((char*)(&(_OMC_LIT_STRUCT137).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT137)((void*)((char*)(&(_OMC_LIT_STRUCT137).header) + 3))
376#define _OMC_LIT138_data"der" "der"
377static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT138,3,_OMC_LIT138_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT138
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "der"
}
;
378#define _OMC_LIT138((void*)((char*)(&(_OMC_LIT_STRUCT138).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT138)((void*)((char*)(&(_OMC_LIT_STRUCT138).header) + 3))
379static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT139,1,11)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT139
= { (((1) << 10) + (((11) & 255) << 2)),
{&DAE_Type_T__UNKNOWN__desc,}};
380#define _OMC_LIT139((void*)((char*)(&(_OMC_LIT_STRUCT139).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT139)((void*)((char*)(&(_OMC_LIT_STRUCT139).header) + 3))
381#define _OMC_LIT140_data"Seed" "Seed"
382static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT140,4,_OMC_LIT140_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT140
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "Seed"
}
;
383#define _OMC_LIT140((void*)((char*)(&(_OMC_LIT_STRUCT140).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT140)((void*)((char*)(&(_OMC_LIT_STRUCT140).header) + 3))
384#define _OMC_LIT141_data"$funDER" "$funDER"
385static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT141,7,_OMC_LIT141_data)struct { mmc_uint_t header; const char data[(7)+1]; } _OMC_LIT_STRUCT141
= { ((((mmc_uint_t)7)<<(3))+((1<<(3+3))+5)), "$funDER"
}
;
386#define _OMC_LIT141((void*)((char*)(&(_OMC_LIT_STRUCT141).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT141)((void*)((char*)(&(_OMC_LIT_STRUCT141).header) + 3))
387#define _OMC_LIT142_data"nfScalarize" "nfScalarize"
388static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT142,11,_OMC_LIT142_data)struct { mmc_uint_t header; const char data[(11)+1]; } _OMC_LIT_STRUCT142
= { ((((mmc_uint_t)11)<<(3))+((1<<(3+3))+5)), "nfScalarize"
}
;
389#define _OMC_LIT142((void*)((char*)(&(_OMC_LIT_STRUCT142).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT142)((void*)((char*)(&(_OMC_LIT_STRUCT142).header) + 3))
390#define _OMC_LIT143_data"Run scalarization in NF, default true." "Run scalarization in NF, default true."
391static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT143,38,_OMC_LIT143_data)struct { mmc_uint_t header; const char data[(38)+1]; } _OMC_LIT_STRUCT143
= { ((((mmc_uint_t)38)<<(3))+((1<<(3+3))+5)), "Run scalarization in NF, default true."
}
;
392#define _OMC_LIT143((void*)((char*)(&(_OMC_LIT_STRUCT143).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT143)((void*)((char*)(&(_OMC_LIT_STRUCT143).header) + 3))
393static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT144,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT144
= { (((2) << 10) + (((3) & 255) << 2)),
{&Gettext_TranslatableContent_gettext__desc,_OMC_LIT143((void*)((char*)(&(_OMC_LIT_STRUCT143).header) + 3))}};
394#define _OMC_LIT144((void*)((char*)(&(_OMC_LIT_STRUCT144).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT144)((void*)((char*)(&(_OMC_LIT_STRUCT144).header) + 3))
395static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT145,5,3)struct { mmc_uint_t header; const void *data[5]; } _OMC_LIT_STRUCT145
= { (((5) << 10) + (((3) & 255) << 2)),
{&Flags_DebugFlag_DEBUG__FLAG__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(180))((void*)(((((mmc_uint_t) (180)) << 1)+0))),_OMC_LIT142((void*)((char*)(&(_OMC_LIT_STRUCT142).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(1))((void*)(((((mmc_uint_t) (1)) << 1)+0))),_OMC_LIT144((void*)((char*)(&(_OMC_LIT_STRUCT144).header) + 3))}};
396#define _OMC_LIT145((void*)((char*)(&(_OMC_LIT_STRUCT145).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT145)((void*)((char*)(&(_OMC_LIT_STRUCT145).header) + 3))
397static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT146,1,9)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT146
= { (((1) << 10) + (((9) & 255) << 2)),
{&BackendDAE_VarKind_DISCRETE__desc,}};
398#define _OMC_LIT146((void*)((char*)(&(_OMC_LIT_STRUCT146).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT146)((void*)((char*)(&(_OMC_LIT_STRUCT146).header) + 3))
399static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT147,2,1)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT147
= { (((2) << 10) + (((1) & 255) << 2)),
{_OMC_LIT146((void*)((char*)(&(_OMC_LIT_STRUCT146).header) + 3)),MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))}};
400#define _OMC_LIT147((void*)((char*)(&(_OMC_LIT_STRUCT147).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT147)((void*)((char*)(&(_OMC_LIT_STRUCT147).header) + 3))
401static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT148,2,4)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT148
= { (((2) << 10) + (((4) & 255) << 2)),
{&Absyn_Path_IDENT__desc,_OMC_LIT138((void*)((char*)(&(_OMC_LIT_STRUCT138).header) + 3))}};
402#define _OMC_LIT148((void*)((char*)(&(_OMC_LIT_STRUCT148).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT148)((void*)((char*)(&(_OMC_LIT_STRUCT148).header) + 3))
403#define _OMC_LIT149_data"\n- differentiateCrefs " "\n- differentiateCrefs "
404static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT149,22,_OMC_LIT149_data)struct { mmc_uint_t header; const char data[(22)+1]; } _OMC_LIT_STRUCT149
= { ((((mmc_uint_t)22)<<(3))+((1<<(3+3))+5)), "\n- differentiateCrefs "
}
;
405#define _OMC_LIT149((void*)((char*)(&(_OMC_LIT_STRUCT149).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT149)((void*)((char*)(&(_OMC_LIT_STRUCT149).header) + 3))
406#define _OMC_LIT150_data" type:" " type:"
407static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT150,6,_OMC_LIT150_data)struct { mmc_uint_t header; const char data[(6)+1]; } _OMC_LIT_STRUCT150
= { ((((mmc_uint_t)6)<<(3))+((1<<(3+3))+5)), " type:"
}
;
408#define _OMC_LIT150((void*)((char*)(&(_OMC_LIT_STRUCT150).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT150)((void*)((char*)(&(_OMC_LIT_STRUCT150).header) + 3))
409static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT151,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT151
= { (((2) << 10) + (((3) & 255) << 2)),
{&DAE_Type_T__INTEGER__desc,MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))}};
410#define _OMC_LIT151((void*)((char*)(&(_OMC_LIT_STRUCT151).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT151)((void*)((char*)(&(_OMC_LIT_STRUCT151).header) + 3))
411static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT152,1,5)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT152
= { (((1) << 10) + (((5) & 255) << 2)),
{&DAE_VarParallelism_NON__PARALLEL__desc,}};
412#define _OMC_LIT152((void*)((char*)(&(_OMC_LIT_STRUCT152).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT152)((void*)((char*)(&(_OMC_LIT_STRUCT152).header) + 3))
413static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT153,2,6)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT153
= { (((2) << 10) + (((6) & 255) << 2)),
{&DAE_Exp_BCONST__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0)))}};
414#define _OMC_LIT153((void*)((char*)(&(_OMC_LIT_STRUCT153).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT153)((void*)((char*)(&(_OMC_LIT_STRUCT153).header) + 3))
415static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT154,1,6)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT154
= { (((1) << 10) + (((6) & 255) << 2)),
{&DAE_ConnectorType_NON__CONNECTOR__desc,}};
416#define _OMC_LIT154((void*)((char*)(&(_OMC_LIT_STRUCT154).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT154)((void*)((char*)(&(_OMC_LIT_STRUCT154).header) + 3))
417static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT155,1,6)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT155
= { (((1) << 10) + (((6) & 255) << 2)),
{&DAE_VarInnerOuter_NOT__INNER__OUTER__desc,}};
418#define _OMC_LIT155((void*)((char*)(&(_OMC_LIT_STRUCT155).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT155)((void*)((char*)(&(_OMC_LIT_STRUCT155).header) + 3))
419static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT156,1,3)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT156
= { (((1) << 10) + (((3) & 255) << 2)),
{&DAE_Else_NOELSE__desc,}};
420#define _OMC_LIT156((void*)((char*)(&(_OMC_LIT_STRUCT156).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT156)((void*)((char*)(&(_OMC_LIT_STRUCT156).header) + 3))
421#define _OMC_LIT157_data"- differentiateStatements " "- differentiateStatements "
422static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT157,26,_OMC_LIT157_data)struct { mmc_uint_t header; const char data[(26)+1]; } _OMC_LIT_STRUCT157
= { ((((mmc_uint_t)26)<<(3))+((1<<(3+3))+5)), "- differentiateStatements "
}
;
423#define _OMC_LIT157((void*)((char*)(&(_OMC_LIT_STRUCT157).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT157)((void*)((char*)(&(_OMC_LIT_STRUCT157).header) + 3))
424static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT158,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT158
= { (((2) << 10) + (((3) & 255) << 2)),
{&DAE_Exp_ICONST__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0)))}};
425#define _OMC_LIT158((void*)((char*)(&(_OMC_LIT_STRUCT158).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT158)((void*)((char*)(&(_OMC_LIT_STRUCT158).header) + 3))
426#define _OMC_LIT159_data"- differentiateExp " "- differentiateExp "
427static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT159,19,_OMC_LIT159_data)struct { mmc_uint_t header; const char data[(19)+1]; } _OMC_LIT_STRUCT159
= { ((((mmc_uint_t)19)<<(3))+((1<<(3+3))+5)), "- differentiateExp "
}
;
428#define _OMC_LIT159((void*)((char*)(&(_OMC_LIT_STRUCT159).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT159)((void*)((char*)(&(_OMC_LIT_STRUCT159).header) + 3))
429#define _OMC_LIT160_data" type: " " type: "
430static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT160,7,_OMC_LIT160_data)struct { mmc_uint_t header; const char data[(7)+1]; } _OMC_LIT_STRUCT160
= { ((((mmc_uint_t)7)<<(3))+((1<<(3+3))+5)), " type: "
}
;
431#define _OMC_LIT160((void*)((char*)(&(_OMC_LIT_STRUCT160).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT160)((void*)((char*)(&(_OMC_LIT_STRUCT160).header) + 3))
432#define _OMC_LIT161_data" w.r.t " " w.r.t "
433static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT161,7,_OMC_LIT161_data)struct { mmc_uint_t header; const char data[(7)+1]; } _OMC_LIT_STRUCT161
= { ((((mmc_uint_t)7)<<(3))+((1<<(3+3))+5)), " w.r.t "
}
;
434#define _OMC_LIT161((void*)((char*)(&(_OMC_LIT_STRUCT161).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT161)((void*)((char*)(&(_OMC_LIT_STRUCT161).header) + 3))
435static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT162,1,6)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT162
= { (((1) << 10) + (((6) & 255) << 2)),
{&ErrorTypes_MessageType_SYMBOLIC__desc,}};
436#define _OMC_LIT162((void*)((char*)(&(_OMC_LIT_STRUCT162).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT162)((void*)((char*)(&(_OMC_LIT_STRUCT162).header) + 3))
437#define _OMC_LIT163_data"Derivative of expression \"%s\" w.r.t. \"%s\" is non-existent." "Derivative of expression \"%s\" w.r.t. \"%s\" is non-existent."
438static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT163,58,_OMC_LIT163_data)struct { mmc_uint_t header; const char data[(58)+1]; } _OMC_LIT_STRUCT163
= { ((((mmc_uint_t)58)<<(3))+((1<<(3+3))+5)), "Derivative of expression \"%s\" w.r.t. \"%s\" is non-existent."
}
;
439#define _OMC_LIT163((void*)((char*)(&(_OMC_LIT_STRUCT163).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT163)((void*)((char*)(&(_OMC_LIT_STRUCT163).header) + 3))
440static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT164,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT164
= { (((2) << 10) + (((3) & 255) << 2)),
{&Gettext_TranslatableContent_gettext__desc,_OMC_LIT163((void*)((char*)(&(_OMC_LIT_STRUCT163).header) + 3))}};
441#define _OMC_LIT164((void*)((char*)(&(_OMC_LIT_STRUCT164).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT164)((void*)((char*)(&(_OMC_LIT_STRUCT164).header) + 3))
442static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT165,5,3)struct { mmc_uint_t header; const void *data[5]; } _OMC_LIT_STRUCT165
= { (((5) << 10) + (((3) & 255) << 2)),
{&ErrorTypes_Message_MESSAGE__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(36))((void*)(((((mmc_uint_t) (36)) << 1)+0))),_OMC_LIT162((void*)((char*)(&(_OMC_LIT_STRUCT162).header) + 3)),_OMC_LIT11((void*)((char*)(&(_OMC_LIT_STRUCT11).header) + 3)),_OMC_LIT164((void*)((char*)(&(_OMC_LIT_STRUCT164).header) + 3))}};
443#define _OMC_LIT165((void*)((char*)(&(_OMC_LIT_STRUCT165).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT165)((void*)((char*)(&(_OMC_LIT_STRUCT165).header) + 3))
444#define _OMC_LIT166_data"equation list" "equation list"
445static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT166,13,_OMC_LIT166_data)struct { mmc_uint_t header; const char data[(13)+1]; } _OMC_LIT_STRUCT166
= { ((((mmc_uint_t)13)<<(3))+((1<<(3+3))+5)), "equation list"
}
;
446#define _OMC_LIT166((void*)((char*)(&(_OMC_LIT_STRUCT166).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT166)((void*)((char*)(&(_OMC_LIT_STRUCT166).header) + 3))
447#define _OMC_LIT167_data"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo" "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
448static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT167,98,_OMC_LIT167_data)struct { mmc_uint_t header; const char data[(98)+1]; } _OMC_LIT_STRUCT167
= { ((((mmc_uint_t)98)<<(3))+((1<<(3+3))+5)), "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
}
;
449#define _OMC_LIT167((void*)((char*)(&(_OMC_LIT_STRUCT167).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT167)((void*)((char*)(&(_OMC_LIT_STRUCT167).header) + 3))
450static const MMC_DEFREALLIT(_OMC_LIT_STRUCT168_6,1580577680.0)struct mmc_real_lit _OMC_LIT_STRUCT168_6 = {0,(((8/8) <<
10) + 9),1580577680.0}
;
451#define _OMC_LIT168_6((void*)((char*)(&(_OMC_LIT_STRUCT168_6).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT168_6)((void*)((char*)(&(_OMC_LIT_STRUCT168_6).header) + 3))
452static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT168,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT168
= { (((8) << 10) + (((3) & 255) << 2)),
{&SourceInfo_SOURCEINFO__desc,_OMC_LIT167((void*)((char*)(&(_OMC_LIT_STRUCT167).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(492))((void*)(((((mmc_uint_t) (492)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(9))((void*)(((((mmc_uint_t) (9)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(492))((void*)(((((mmc_uint_t) (492)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(176))((void*)(((((mmc_uint_t) (176)) << 1)+0))),_OMC_LIT168_6((void*)((char*)(&(_OMC_LIT_STRUCT168_6).header) + 3))}};
453#define _OMC_LIT168((void*)((char*)(&(_OMC_LIT_STRUCT168).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT168)((void*)((char*)(&(_OMC_LIT_STRUCT168).header) + 3))
454static const MMC_DEFREALLIT(_OMC_LIT_STRUCT169_6,1580577680.0)struct mmc_real_lit _OMC_LIT_STRUCT169_6 = {0,(((8/8) <<
10) + 9),1580577680.0}
;
455#define _OMC_LIT169_6((void*)((char*)(&(_OMC_LIT_STRUCT169_6).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT169_6)((void*)((char*)(&(_OMC_LIT_STRUCT169_6).header) + 3))
456static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT169,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT169
= { (((8) << 10) + (((3) & 255) << 2)),
{&SourceInfo_SOURCEINFO__desc,_OMC_LIT167((void*)((char*)(&(_OMC_LIT_STRUCT167).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(454))((void*)(((((mmc_uint_t) (454)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(9))((void*)(((((mmc_uint_t) (9)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(454))((void*)(((((mmc_uint_t) (454)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(154))((void*)(((((mmc_uint_t) (154)) << 1)+0))),_OMC_LIT169_6((void*)((char*)(&(_OMC_LIT_STRUCT169_6).header) + 3))}};
457#define _OMC_LIT169((void*)((char*)(&(_OMC_LIT_STRUCT169).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT169)((void*)((char*)(&(_OMC_LIT_STRUCT169).header) + 3))
458#define _OMC_LIT170_data"### differentiateEquation\n " "### differentiateEquation\n "
459static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT170,27,_OMC_LIT170_data)struct { mmc_uint_t header; const char data[(27)+1]; } _OMC_LIT_STRUCT170
= { ((((mmc_uint_t)27)<<(3))+((1<<(3+3))+5)), "### differentiateEquation\n "
}
;
460#define _OMC_LIT170((void*)((char*)(&(_OMC_LIT_STRUCT170).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT170)((void*)((char*)(&(_OMC_LIT_STRUCT170).header) + 3))
461static const MMC_DEFREALLIT(_OMC_LIT_STRUCT171_6,1580577680.0)struct mmc_real_lit _OMC_LIT_STRUCT171_6 = {0,(((8/8) <<
10) + 9),1580577680.0}
;
462#define _OMC_LIT171_6((void*)((char*)(&(_OMC_LIT_STRUCT171_6).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT171_6)((void*)((char*)(&(_OMC_LIT_STRUCT171_6).header) + 3))
463static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT171,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT171
= { (((8) << 10) + (((3) & 255) << 2)),
{&SourceInfo_SOURCEINFO__desc,_OMC_LIT167((void*)((char*)(&(_OMC_LIT_STRUCT167).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(415))((void*)(((((mmc_uint_t) (415)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(7))((void*)(((((mmc_uint_t) (7)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(415))((void*)(((((mmc_uint_t) (415)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(159))((void*)(((((mmc_uint_t) (159)) << 1)+0))),_OMC_LIT171_6((void*)((char*)(&(_OMC_LIT_STRUCT171_6).header) + 3))}};
464#define _OMC_LIT171((void*)((char*)(&(_OMC_LIT_STRUCT171).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT171)((void*)((char*)(&(_OMC_LIT_STRUCT171).header) + 3))
465#define _OMC_LIT172_data"### Result of differentiateEquation\n --> " "### Result of differentiateEquation\n --> "
466static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT172,41,_OMC_LIT172_data)struct { mmc_uint_t header; const char data[(41)+1]; } _OMC_LIT_STRUCT172
= { ((((mmc_uint_t)41)<<(3))+((1<<(3+3))+5)), "### Result of differentiateEquation\n --> "
}
;
467#define _OMC_LIT172((void*)((char*)(&(_OMC_LIT_STRUCT172).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT172)((void*)((char*)(&(_OMC_LIT_STRUCT172).header) + 3))
468static const MMC_DEFREALLIT(_OMC_LIT_STRUCT173_6,1580577680.0)struct mmc_real_lit _OMC_LIT_STRUCT173_6 = {0,(((8/8) <<
10) + 9),1580577680.0}
;
469#define _OMC_LIT173_6((void*)((char*)(&(_OMC_LIT_STRUCT173_6).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT173_6)((void*)((char*)(&(_OMC_LIT_STRUCT173_6).header) + 3))
470static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT173,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT173
= { (((8) << 10) + (((3) & 255) << 2)),
{&SourceInfo_SOURCEINFO__desc,_OMC_LIT167((void*)((char*)(&(_OMC_LIT_STRUCT167).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(265))((void*)(((((mmc_uint_t) (265)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(5))((void*)(((((mmc_uint_t) (5)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(265))((void*)(((((mmc_uint_t) (265)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(157))((void*)(((((mmc_uint_t) (157)) << 1)+0))),_OMC_LIT173_6((void*)((char*)(&(_OMC_LIT_STRUCT173_6).header) + 3))}};
471#define _OMC_LIT173((void*)((char*)(&(_OMC_LIT_STRUCT173).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT173)((void*)((char*)(&(_OMC_LIT_STRUCT173).header) + 3))
472static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT174,1,6)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT174
= { (((1) << 10) + (((6) & 255) << 2)),
{&BackendDAE_DifferentiationType_DIFF__FULL__JACOBIAN__desc,}};
473#define _OMC_LIT174((void*)((char*)(&(_OMC_LIT_STRUCT174).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT174)((void*)((char*)(&(_OMC_LIT_STRUCT174).header) + 3))
474static const MMC_DEFREALLIT(_OMC_LIT_STRUCT175_6,1580577680.0)struct mmc_real_lit _OMC_LIT_STRUCT175_6 = {0,(((8/8) <<
10) + 9),1580577680.0}
;
475#define _OMC_LIT175_6((void*)((char*)(&(_OMC_LIT_STRUCT175_6).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT175_6)((void*)((char*)(&(_OMC_LIT_STRUCT175_6).header) + 3))
476static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT175,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT175
= { (((8) << 10) + (((3) & 255) << 2)),
{&SourceInfo_SOURCEINFO__desc,_OMC_LIT167((void*)((char*)(&(_OMC_LIT_STRUCT167).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(237))((void*)(((((mmc_uint_t) (237)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(7))((void*)(((((mmc_uint_t) (7)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(237))((void*)(((((mmc_uint_t) (237)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(147))((void*)(((((mmc_uint_t) (147)) << 1)+0))),_OMC_LIT175_6((void*)((char*)(&(_OMC_LIT_STRUCT175_6).header) + 3))}};
477#define _OMC_LIT175((void*)((char*)(&(_OMC_LIT_STRUCT175).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT175)((void*)((char*)(&(_OMC_LIT_STRUCT175).header) + 3))
478static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT176,1,5)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT176
= { (((1) << 10) + (((5) & 255) << 2)),
{&DAE_AvlTreePathFunction_Tree_EMPTY__desc,}};
479#define _OMC_LIT176((void*)((char*)(&(_OMC_LIT_STRUCT176).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT176)((void*)((char*)(&(_OMC_LIT_STRUCT176).header) + 3))
480#define _OMC_LIT177_data"### differentiateExpSolve\n " "### differentiateExpSolve\n "
481static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT177,27,_OMC_LIT177_data)struct { mmc_uint_t header; const char data[(27)+1]; } _OMC_LIT_STRUCT177
= { ((((mmc_uint_t)27)<<(3))+((1<<(3+3))+5)), "### differentiateExpSolve\n "
}
;
482#define _OMC_LIT177((void*)((char*)(&(_OMC_LIT_STRUCT177).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT177)((void*)((char*)(&(_OMC_LIT_STRUCT177).header) + 3))
483static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT178,1,4)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT178
= { (((1) << 10) + (((4) & 255) << 2)),
{&BackendDAE_DifferentiationType_SIMPLE__DIFFERENTIATION__desc,}};
484#define _OMC_LIT178((void*)((char*)(&(_OMC_LIT_STRUCT178).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT178)((void*)((char*)(&(_OMC_LIT_STRUCT178).header) + 3))
485#define _OMC_LIT179_data"### Result of differentiateExpSolve\n --> " "### Result of differentiateExpSolve\n --> "
486static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT179,41,_OMC_LIT179_data)struct { mmc_uint_t header; const char data[(41)+1]; } _OMC_LIT_STRUCT179
= { ((((mmc_uint_t)41)<<(3))+((1<<(3+3))+5)), "### Result of differentiateExpSolve\n --> "
}
;
487#define _OMC_LIT179((void*)((char*)(&(_OMC_LIT_STRUCT179).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT179)((void*)((char*)(&(_OMC_LIT_STRUCT179).header) + 3))
488static const MMC_DEFREALLIT(_OMC_LIT_STRUCT180_6,1580577680.0)struct mmc_real_lit _OMC_LIT_STRUCT180_6 = {0,(((8/8) <<
10) + 9),1580577680.0}
;
489#define _OMC_LIT180_6((void*)((char*)(&(_OMC_LIT_STRUCT180_6).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT180_6)((void*)((char*)(&(_OMC_LIT_STRUCT180_6).header) + 3))
490static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT180,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT180
= { (((8) << 10) + (((3) & 255) << 2)),
{&SourceInfo_SOURCEINFO__desc,_OMC_LIT167((void*)((char*)(&(_OMC_LIT_STRUCT167).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(200))((void*)(((((mmc_uint_t) (200)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(7))((void*)(((((mmc_uint_t) (7)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(200))((void*)(((((mmc_uint_t) (200)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(147))((void*)(((((mmc_uint_t) (147)) << 1)+0))),_OMC_LIT180_6((void*)((char*)(&(_OMC_LIT_STRUCT180_6).header) + 3))}};
491#define _OMC_LIT180((void*)((char*)(&(_OMC_LIT_STRUCT180).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT180)((void*)((char*)(&(_OMC_LIT_STRUCT180).header) + 3))
492#define _OMC_LIT181_data"### differentiateExpTime\n " "### differentiateExpTime\n "
493static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT181,26,_OMC_LIT181_data)struct { mmc_uint_t header; const char data[(26)+1]; } _OMC_LIT_STRUCT181
= { ((((mmc_uint_t)26)<<(3))+((1<<(3+3))+5)), "### differentiateExpTime\n "
}
;
494#define _OMC_LIT181((void*)((char*)(&(_OMC_LIT_STRUCT181).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT181)((void*)((char*)(&(_OMC_LIT_STRUCT181).header) + 3))
495#define _OMC_LIT182_data" w.r.t. time\n" " w.r.t. time\n"
496static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT182,13,_OMC_LIT182_data)struct { mmc_uint_t header; const char data[(13)+1]; } _OMC_LIT_STRUCT182
= { ((((mmc_uint_t)13)<<(3))+((1<<(3+3))+5)), " w.r.t. time\n"
}
;
497#define _OMC_LIT182((void*)((char*)(&(_OMC_LIT_STRUCT182).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT182)((void*)((char*)(&(_OMC_LIT_STRUCT182).header) + 3))
498#define _OMC_LIT183_data"time" "time"
499static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT183,4,_OMC_LIT183_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT183
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), "time"
}
;
500#define _OMC_LIT183((void*)((char*)(&(_OMC_LIT_STRUCT183).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT183)((void*)((char*)(&(_OMC_LIT_STRUCT183).header) + 3))
501static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT184,4,4)struct { mmc_uint_t header; const void *data[4]; } _OMC_LIT_STRUCT184
= { (((4) << 10) + (((4) & 255) << 2)),
{&DAE_ComponentRef_CREF__IDENT__desc,_OMC_LIT183((void*)((char*)(&(_OMC_LIT_STRUCT183).header) + 3)),_OMC_LIT47((void*)((char*)(&(_OMC_LIT_STRUCT47).header) + 3)),MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))}};
502#define _OMC_LIT184((void*)((char*)(&(_OMC_LIT_STRUCT184).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT184)((void*)((char*)(&(_OMC_LIT_STRUCT184).header) + 3))
503static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT185,1,3)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT185
= { (((1) << 10) + (((3) & 255) << 2)),
{&BackendDAE_DifferentiationType_DIFFERENTIATION__TIME__desc,}};
504#define _OMC_LIT185((void*)((char*)(&(_OMC_LIT_STRUCT185).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT185)((void*)((char*)(&(_OMC_LIT_STRUCT185).header) + 3))
505#define _OMC_LIT186_data"### Result of differentiateExpTime\n --> " "### Result of differentiateExpTime\n --> "
506static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT186,40,_OMC_LIT186_data)struct { mmc_uint_t header; const char data[(40)+1]; } _OMC_LIT_STRUCT186
= { ((((mmc_uint_t)40)<<(3))+((1<<(3+3))+5)), "### Result of differentiateExpTime\n --> "
}
;
507#define _OMC_LIT186((void*)((char*)(&(_OMC_LIT_STRUCT186).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT186)((void*)((char*)(&(_OMC_LIT_STRUCT186).header) + 3))
508#define _OMC_LIT187_data"n" "n"
509static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT187,1,_OMC_LIT187_data)struct { mmc_uint_t header; const char data[(1)+1]; } _OMC_LIT_STRUCT187
= { ((((mmc_uint_t)1)<<(3))+((1<<(3+3))+5)), "n"
}
;
510#define _OMC_LIT187((void*)((char*)(&(_OMC_LIT_STRUCT187).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT187)((void*)((char*)(&(_OMC_LIT_STRUCT187).header) + 3))
511static const MMC_DEFREALLIT(_OMC_LIT_STRUCT188_6,1580577680.0)struct mmc_real_lit _OMC_LIT_STRUCT188_6 = {0,(((8/8) <<
10) + 9),1580577680.0}
;
512#define _OMC_LIT188_6((void*)((char*)(&(_OMC_LIT_STRUCT188_6).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT188_6)((void*)((char*)(&(_OMC_LIT_STRUCT188_6).header) + 3))
513static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT188,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT188
= { (((8) << 10) + (((3) & 255) << 2)),
{&SourceInfo_SOURCEINFO__desc,_OMC_LIT167((void*)((char*)(&(_OMC_LIT_STRUCT167).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(163))((void*)(((((mmc_uint_t) (163)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(7))((void*)(((((mmc_uint_t) (7)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(163))((void*)(((((mmc_uint_t) (163)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(119))((void*)(((((mmc_uint_t) (119)) << 1)+0))),_OMC_LIT188_6((void*)((char*)(&(_OMC_LIT_STRUCT188_6).header) + 3))}};
514#define _OMC_LIT188((void*)((char*)(&(_OMC_LIT_STRUCT188).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT188)((void*)((char*)(&(_OMC_LIT_STRUCT188).header) + 3))
515#define _OMC_LIT189_data"### differentiateEquationTime\n" "### differentiateEquationTime\n"
516static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT189,30,_OMC_LIT189_data)struct { mmc_uint_t header; const char data[(30)+1]; } _OMC_LIT_STRUCT189
= { ((((mmc_uint_t)30)<<(3))+((1<<(3+3))+5)), "### differentiateEquationTime\n"
}
;
517#define _OMC_LIT189((void*)((char*)(&(_OMC_LIT_STRUCT189).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT189)((void*)((char*)(&(_OMC_LIT_STRUCT189).header) + 3))
518#define _OMC_LIT190_data"### Result of differentiateEquationTime\n --> " "### Result of differentiateEquationTime\n --> "
519static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT190,45,_OMC_LIT190_data)struct { mmc_uint_t header; const char data[(45)+1]; } _OMC_LIT_STRUCT190
= { ((((mmc_uint_t)45)<<(3))+((1<<(3+3))+5)), "### Result of differentiateEquationTime\n --> "
}
;
520#define _OMC_LIT190((void*)((char*)(&(_OMC_LIT_STRUCT190).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT190)((void*)((char*)(&(_OMC_LIT_STRUCT190).header) + 3))
521#define _OMC_LIT191_data"\nDifferentiate.differentiateEquationTime failed for " "\nDifferentiate.differentiateEquationTime failed for "
522static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT191,52,_OMC_LIT191_data)struct { mmc_uint_t header; const char data[(52)+1]; } _OMC_LIT_STRUCT191
= { ((((mmc_uint_t)52)<<(3))+((1<<(3+3))+5)), "\nDifferentiate.differentiateEquationTime failed for "
}
;
523#define _OMC_LIT191((void*)((char*)(&(_OMC_LIT_STRUCT191).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT191)((void*)((char*)(&(_OMC_LIT_STRUCT191).header) + 3))
524#include "util/modelica.h"
525
526#include "Differentiate_includes.h"
527
528
529/* default, do not make protected functions static */
530#if !defined(PROTECTED_FUNCTION_STATIC)
531#define PROTECTED_FUNCTION_STATIC
532#endif
533PROTECTED_FUNCTION_STATIC void omc_Differentiate_dumpInputData(threadData_t *threadData, modelica_metatype _inDiffData);
534static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_dumpInputData,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_dumpInputData
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_dumpInputDataomc_Differentiate_dumpInputData,0}};
535#define boxvar_Differentiate_dumpInputData((void*)((char*)(&(boxvar_lit_Differentiate_dumpInputData
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_dumpInputData)((void*)((char*)(&(boxvar_lit_Differentiate_dumpInputData
).header) + 3))
536PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_addElementVars2Dep(threadData_t *threadData, modelica_metatype _inElementLstVars, modelica_metatype _inFunctions, modelica_metatype _inDiffData, modelica_metatype *out_outEqnsLst);
537static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_addElementVars2Dep,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_addElementVars2Dep
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_addElementVars2Depomc_Differentiate_addElementVars2Dep,0}};
538#define boxvar_Differentiate_addElementVars2Dep((void*)((char*)(&(boxvar_lit_Differentiate_addElementVars2Dep
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_addElementVars2Dep)((void*)((char*)(&(boxvar_lit_Differentiate_addElementVars2Dep
).header) + 3))
539PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_lowerVarsElementVars(threadData_t *threadData, modelica_metatype _inElementLstVars, modelica_metatype _functions, modelica_metatype *out_eqnsLst, modelica_metatype *out_reqnsLst);
540static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_lowerVarsElementVars,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_lowerVarsElementVars
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_lowerVarsElementVarsomc_Differentiate_lowerVarsElementVars,0}};
541#define boxvar_Differentiate_lowerVarsElementVars((void*)((char*)(&(boxvar_lit_Differentiate_lowerVarsElementVars
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_lowerVarsElementVars)((void*)((char*)(&(boxvar_lit_Differentiate_lowerVarsElementVars
).header) + 3))
542PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_addGlobalVars(threadData_t *threadData, modelica_metatype _inVarsLst, modelica_metatype _inDiffData);
543static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_addGlobalVars,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_addGlobalVars
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_addGlobalVarsomc_Differentiate_addGlobalVars,0}};
544#define boxvar_Differentiate_addGlobalVars((void*)((char*)(&(boxvar_lit_Differentiate_addGlobalVars
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_addGlobalVars)((void*)((char*)(&(boxvar_lit_Differentiate_addGlobalVars
).header) + 3))
545PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_addAllVars(threadData_t *threadData, modelica_metatype _inVarsLst, modelica_metatype _inDiffData);
546static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_addAllVars,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_addAllVars
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_addAllVarsomc_Differentiate_addAllVars,0}};
547#define boxvar_Differentiate_addAllVars((void*)((char*)(&(boxvar_lit_Differentiate_addAllVars).header
) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_addAllVars)((void*)((char*)(&(boxvar_lit_Differentiate_addAllVars).header
) + 3))
548PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_addDependentVars(threadData_t *threadData, modelica_metatype _inVarsLst, modelica_metatype _inDiffData);
549static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_addDependentVars,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_addDependentVars
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_addDependentVarsomc_Differentiate_addDependentVars,0}};
550#define boxvar_Differentiate_addDependentVars((void*)((char*)(&(boxvar_lit_Differentiate_addDependentVars
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_addDependentVars)((void*)((char*)(&(boxvar_lit_Differentiate_addDependentVars
).header) + 3))
551PROTECTED_FUNCTION_STATIC modelica_boolean omc_Differentiate_diffableTypes(threadData_t *threadData, modelica_metatype _inType);
552PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_diffableTypes(threadData_t *threadData, modelica_metatype _inType);
553static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_diffableTypes,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_diffableTypes
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_diffableTypes,0}};
554#define boxvar_Differentiate_diffableTypes((void*)((char*)(&(boxvar_lit_Differentiate_diffableTypes
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_diffableTypes)((void*)((char*)(&(boxvar_lit_Differentiate_diffableTypes
).header) + 3))
555PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_getFunctionMapper1(threadData_t *threadData, modelica_metatype _inFuncDefs);
556static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_getFunctionMapper1,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_getFunctionMapper1
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_getFunctionMapper1omc_Differentiate_getFunctionMapper1,0}};
557#define boxvar_Differentiate_getFunctionMapper1((void*)((char*)(&(boxvar_lit_Differentiate_getFunctionMapper1
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_getFunctionMapper1)((void*)((char*)(&(boxvar_lit_Differentiate_getFunctionMapper1
).header) + 3))
558PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_getlowerOrderDerivative(threadData_t *threadData, modelica_metatype _fname, modelica_metatype _functions);
559static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_getlowerOrderDerivative,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_getlowerOrderDerivative
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_getlowerOrderDerivativeomc_Differentiate_getlowerOrderDerivative,0}};
560#define boxvar_Differentiate_getlowerOrderDerivative((void*)((char*)(&(boxvar_lit_Differentiate_getlowerOrderDerivative
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_getlowerOrderDerivative)((void*)((char*)(&(boxvar_lit_Differentiate_getlowerOrderDerivative
).header) + 3))
561PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_checkDerFunctionConds(threadData_t *threadData, modelica_metatype _inbarr, modelica_metatype _icrlst, modelica_metatype _expl, modelica_metatype _inDiffArgs);
562static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_checkDerFunctionConds,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_checkDerFunctionConds
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_checkDerFunctionCondsomc_Differentiate_checkDerFunctionConds,0}};
563#define boxvar_Differentiate_checkDerFunctionConds((void*)((char*)(&(boxvar_lit_Differentiate_checkDerFunctionConds
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_checkDerFunctionConds)((void*)((char*)(&(boxvar_lit_Differentiate_checkDerFunctionConds
).header) + 3))
564PROTECTED_FUNCTION_STATIC modelica_boolean omc_Differentiate_checkDerivativeFunctionInputs(threadData_t *threadData, modelica_metatype _blst, modelica_metatype _tp, modelica_metatype _dtp, modelica_metatype *out_outExpectedTypeLst);
565PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_checkDerivativeFunctionInputs(threadData_t *threadData, modelica_metatype _blst, modelica_metatype _tp, modelica_metatype _dtp, modelica_metatype *out_outExpectedTypeLst);
566static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_checkDerivativeFunctionInputs,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_checkDerivativeFunctionInputs
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_checkDerivativeFunctionInputs,0}};
567#define boxvar_Differentiate_checkDerivativeFunctionInputs((void*)((char*)(&(boxvar_lit_Differentiate_checkDerivativeFunctionInputs
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_checkDerivativeFunctionInputs)((void*)((char*)(&(boxvar_lit_Differentiate_checkDerivativeFunctionInputs
).header) + 3))
568PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiateFunction1(threadData_t *threadData, modelica_metatype _inFuncName, modelica_metatype _inMapper, modelica_metatype _inTp, modelica_metatype _expl, modelica_metatype _inDiffArgs, modelica_metatype *out_blst);
569static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_differentiateFunction1,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_differentiateFunction1
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_differentiateFunction1omc_Differentiate_differentiateFunction1,0}};
570#define boxvar_Differentiate_differentiateFunction1((void*)((char*)(&(boxvar_lit_Differentiate_differentiateFunction1
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_differentiateFunction1)((void*)((char*)(&(boxvar_lit_Differentiate_differentiateFunction1
).header) + 3))
571PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiateElementVars(threadData_t *threadData, modelica_metatype _inElements, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_metatype _inElementsDer, modelica_metatype _inElementsNoDer, modelica_metatype _inBooleanLst, modelica_integer _maxIter, modelica_boolean _elementListInputs, modelica_metatype *out_outFunctionTree, modelica_metatype *out_outElementsNoDer, modelica_metatype *out_outBooleanLst);
572PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_differentiateElementVars(threadData_t *threadData, modelica_metatype _inElements, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_metatype _inElementsDer, modelica_metatype _inElementsNoDer, modelica_metatype _inBooleanLst, modelica_metatype _maxIter, modelica_metatype _elementListInputs, modelica_metatype *out_outFunctionTree, modelica_metatype *out_outElementsNoDer, modelica_metatype *out_outBooleanLst);
573static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_differentiateElementVars,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_differentiateElementVars
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_differentiateElementVars,0}};
574#define boxvar_Differentiate_differentiateElementVars((void*)((char*)(&(boxvar_lit_Differentiate_differentiateElementVars
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_differentiateElementVars)((void*)((char*)(&(boxvar_lit_Differentiate_differentiateElementVars
).header) + 3))
575PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_getFunctionInOutVars(threadData_t *threadData, modelica_metatype _inFunction, modelica_metatype _inFunctionTree, modelica_metatype _inDiffwrtCref, modelica_integer _maxIter, modelica_metatype *out_inputVarsDer, modelica_metatype *out_inputVarsNoDer, modelica_metatype *out_outputVarsDer, modelica_metatype *out_outputVarsNoDer, modelica_metatype *out_blst);
576PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_getFunctionInOutVars(threadData_t *threadData, modelica_metatype _inFunction, modelica_metatype _inFunctionTree, modelica_metatype _inDiffwrtCref, modelica_metatype _maxIter, modelica_metatype *out_inputVarsDer, modelica_metatype *out_inputVarsNoDer, modelica_metatype *out_outputVarsDer, modelica_metatype *out_outputVarsNoDer, modelica_metatype *out_blst);
577static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_getFunctionInOutVars,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_getFunctionInOutVars
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_getFunctionInOutVars,0}};
578#define boxvar_Differentiate_getFunctionInOutVars((void*)((char*)(&(boxvar_lit_Differentiate_getFunctionInOutVars
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_getFunctionInOutVars)((void*)((char*)(&(boxvar_lit_Differentiate_getFunctionInOutVars
).header) + 3))
579PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_getDiffedTypeandName(threadData_t *threadData, modelica_metatype _inFunction, modelica_metatype _inputVarsDer, modelica_metatype _outputVarsDer, modelica_metatype _blst, modelica_metatype *out_diffedType);
580static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_getDiffedTypeandName,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_getDiffedTypeandName
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_getDiffedTypeandNameomc_Differentiate_getDiffedTypeandName,0}};
581#define boxvar_Differentiate_getDiffedTypeandName((void*)((char*)(&(boxvar_lit_Differentiate_getDiffedTypeandName
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_getDiffedTypeandName)((void*)((char*)(&(boxvar_lit_Differentiate_getDiffedTypeandName
).header) + 3))
582PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiatePartialFunction(threadData_t *threadData, modelica_metatype _inFunction, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_integer _maxIter, modelica_metatype *out_outFunctionTree, modelica_metatype *out_outBooleanlst);
583PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_differentiatePartialFunction(threadData_t *threadData, modelica_metatype _inFunction, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_metatype _maxIter, modelica_metatype *out_outFunctionTree, modelica_metatype *out_outBooleanlst);
584static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_differentiatePartialFunction,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_differentiatePartialFunction
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_differentiatePartialFunction,0}};
585#define boxvar_Differentiate_differentiatePartialFunction((void*)((char*)(&(boxvar_lit_Differentiate_differentiatePartialFunction
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_differentiatePartialFunction)((void*)((char*)(&(boxvar_lit_Differentiate_differentiatePartialFunction
).header) + 3))
586PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_prepareArgumentsExplArray(threadData_t *threadData, modelica_metatype _inWorkLst, modelica_metatype _inArgs, modelica_integer _inCurrentArg, modelica_metatype _inAccum);
587PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_prepareArgumentsExplArray(threadData_t *threadData, modelica_metatype _inWorkLst, modelica_metatype _inArgs, modelica_metatype _inCurrentArg, modelica_metatype _inAccum);
588static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_prepareArgumentsExplArray,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_prepareArgumentsExplArray
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_prepareArgumentsExplArray,0}};
589#define boxvar_Differentiate_prepareArgumentsExplArray((void*)((char*)(&(boxvar_lit_Differentiate_prepareArgumentsExplArray
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_prepareArgumentsExplArray)((void*)((char*)(&(boxvar_lit_Differentiate_prepareArgumentsExplArray
).header) + 3))
590PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_createPartialSum(threadData_t *threadData, modelica_metatype _inArgsLst, modelica_metatype _inDiff, modelica_metatype _inCall, modelica_metatype _inAccum);
591static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_createPartialSum,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_createPartialSum
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_createPartialSumomc_Differentiate_createPartialSum,0}};
592#define boxvar_Differentiate_createPartialSum((void*)((char*)(&(boxvar_lit_Differentiate_createPartialSum
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_createPartialSum)((void*)((char*)(&(boxvar_lit_Differentiate_createPartialSum
).header) + 3))
593PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_createPartialDifferentiatedExp(threadData_t *threadData, modelica_metatype _inDiffExpl, modelica_metatype _inDiffExplZero, modelica_metatype _inOrginalExpl, modelica_metatype _inCall, modelica_integer _currentLstElement, modelica_metatype _inAccum);
594PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_createPartialDifferentiatedExp(threadData_t *threadData, modelica_metatype _inDiffExpl, modelica_metatype _inDiffExplZero, modelica_metatype _inOrginalExpl, modelica_metatype _inCall, modelica_metatype _currentLstElement, modelica_metatype _inAccum);
595static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_createPartialDifferentiatedExp,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_createPartialDifferentiatedExp
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_createPartialDifferentiatedExp,0}};
596#define boxvar_Differentiate_createPartialDifferentiatedExp((void*)((char*)(&(boxvar_lit_Differentiate_createPartialDifferentiatedExp
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_createPartialDifferentiatedExp)((void*)((char*)(&(boxvar_lit_Differentiate_createPartialDifferentiatedExp
).header) + 3))
597PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_createPartialArgumentsRecord(threadData_t *threadData, modelica_metatype _inTypesLst, modelica_metatype _inVarNames, modelica_metatype _inArgs, modelica_metatype _inDiffedArgs, modelica_metatype _inOrginalExpl, modelica_metatype _inCall);
598static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_createPartialArgumentsRecord,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_createPartialArgumentsRecord
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_createPartialArgumentsRecordomc_Differentiate_createPartialArgumentsRecord,0}};
599#define boxvar_Differentiate_createPartialArgumentsRecord((void*)((char*)(&(boxvar_lit_Differentiate_createPartialArgumentsRecord
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_createPartialArgumentsRecord)((void*)((char*)(&(boxvar_lit_Differentiate_createPartialArgumentsRecord
).header) + 3))
600PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_createPartialArgumentsTuple(threadData_t *threadData, modelica_metatype _inTypesLst, modelica_metatype _inArgs, modelica_metatype _inDiffedArgs, modelica_metatype _inOrginalExpl, modelica_metatype _inCall);
601static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_createPartialArgumentsTuple,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_createPartialArgumentsTuple
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_createPartialArgumentsTupleomc_Differentiate_createPartialArgumentsTuple,0}};
602#define boxvar_Differentiate_createPartialArgumentsTuple((void*)((char*)(&(boxvar_lit_Differentiate_createPartialArgumentsTuple
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_createPartialArgumentsTuple)((void*)((char*)(&(boxvar_lit_Differentiate_createPartialArgumentsTuple
).header) + 3))
603PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_createPartialArguments(threadData_t *threadData, modelica_metatype _outputType, modelica_metatype _inArgs, modelica_metatype _inDiffedArgs, modelica_metatype _inOrginalExpl, modelica_metatype _inCall);
604static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_createPartialArguments,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_createPartialArguments
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_createPartialArgumentsomc_Differentiate_createPartialArguments,0}};
605#define boxvar_Differentiate_createPartialArguments((void*)((char*)(&(boxvar_lit_Differentiate_createPartialArguments
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_createPartialArguments)((void*)((char*)(&(boxvar_lit_Differentiate_createPartialArguments
).header) + 3))
606PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_tryZeroDiff(threadData_t *threadData, modelica_metatype _D_24in_explist, modelica_metatype _D_24in_functions, modelica_integer _maxIter, modelica_metatype *out_functions, modelica_boolean *out_success);
607PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_tryZeroDiff(threadData_t *threadData, modelica_metatype _D_24in_explist, modelica_metatype _D_24in_functions, modelica_metatype _maxIter, modelica_metatype *out_functions, modelica_metatype *out_success);
608static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_tryZeroDiff,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_tryZeroDiff
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_tryZeroDiff,0}};
609#define boxvar_Differentiate_tryZeroDiff((void*)((char*)(&(boxvar_lit_Differentiate_tryZeroDiff).
header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_tryZeroDiff)((void*)((char*)(&(boxvar_lit_Differentiate_tryZeroDiff).
header) + 3))
610PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiateFunctionCallPartial(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_integer _maxIter, modelica_metatype *out_outFunctionTree);
611PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_differentiateFunctionCallPartial(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_metatype _maxIter, modelica_metatype *out_outFunctionTree);
612static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_differentiateFunctionCallPartial,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_differentiateFunctionCallPartial
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_differentiateFunctionCallPartial,0}};
613#define boxvar_Differentiate_differentiateFunctionCallPartial((void*)((char*)(&(boxvar_lit_Differentiate_differentiateFunctionCallPartial
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_differentiateFunctionCallPartial)((void*)((char*)(&(boxvar_lit_Differentiate_differentiateFunctionCallPartial
).header) + 3))
614PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiateFunctionCall(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_integer _maxIter, modelica_metatype *out_outFunctionTree);
615PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_differentiateFunctionCall(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_metatype _maxIter, modelica_metatype *out_outFunctionTree);
616static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_differentiateFunctionCall,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_differentiateFunctionCall
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_differentiateFunctionCall,0}};
617#define boxvar_Differentiate_differentiateFunctionCall((void*)((char*)(&(boxvar_lit_Differentiate_differentiateFunctionCall
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_differentiateFunctionCall)((void*)((char*)(&(boxvar_lit_Differentiate_differentiateFunctionCall
).header) + 3))
618PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiateBinary(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_integer _maxIter, modelica_metatype *out_outFunctionTree);
619PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_differentiateBinary(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_metatype _maxIter, modelica_metatype *out_outFunctionTree);
620static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_differentiateBinary,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_differentiateBinary
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_differentiateBinary,0}};
621#define boxvar_Differentiate_differentiateBinary((void*)((char*)(&(boxvar_lit_Differentiate_differentiateBinary
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_differentiateBinary)((void*)((char*)(&(boxvar_lit_Differentiate_differentiateBinary
).header) + 3))
622PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiateCallExpNArg(threadData_t *threadData, modelica_string _name, modelica_metatype _inExpl, modelica_metatype _inAttr, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_integer _maxIter, modelica_metatype *out_outFunctionTree);
623PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_differentiateCallExpNArg(threadData_t *threadData, modelica_metatype _name, modelica_metatype _inExpl, modelica_metatype _inAttr, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_metatype _maxIter, modelica_metatype *out_outFunctionTree);
624static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_differentiateCallExpNArg,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_differentiateCallExpNArg
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_differentiateCallExpNArg,0}};
625#define boxvar_Differentiate_differentiateCallExpNArg((void*)((char*)(&(boxvar_lit_Differentiate_differentiateCallExpNArg
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_differentiateCallExpNArg)((void*)((char*)(&(boxvar_lit_Differentiate_differentiateCallExpNArg
).header) + 3))
626PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_createFromNCall2ArgsCall(threadData_t *threadData, modelica_string _funcName, modelica_metatype _expl, modelica_metatype _tp);
627static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_createFromNCall2ArgsCall,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_createFromNCall2ArgsCall
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_createFromNCall2ArgsCallomc_Differentiate_createFromNCall2ArgsCall,0}};
628#define boxvar_Differentiate_createFromNCall2ArgsCall((void*)((char*)(&(boxvar_lit_Differentiate_createFromNCall2ArgsCall
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_createFromNCall2ArgsCall)((void*)((char*)(&(boxvar_lit_Differentiate_createFromNCall2ArgsCall
).header) + 3))
629PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiateCallExp1Arg(threadData_t *threadData, modelica_string _name, modelica_metatype _exp, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFuncs, modelica_integer _maxIter, modelica_metatype *out_outFunctionTree);
630PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_differentiateCallExp1Arg(threadData_t *threadData, modelica_metatype _name, modelica_metatype _exp, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFuncs, modelica_metatype _maxIter, modelica_metatype *out_outFunctionTree);
631static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_differentiateCallExp1Arg,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_differentiateCallExp1Arg
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_differentiateCallExp1Arg,0}};
632#define boxvar_Differentiate_differentiateCallExp1Arg((void*)((char*)(&(boxvar_lit_Differentiate_differentiateCallExp1Arg
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_differentiateCallExp1Arg)((void*)((char*)(&(boxvar_lit_Differentiate_differentiateCallExp1Arg
).header) + 3))
633PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiateCalls(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_integer _maxIter, modelica_metatype *out_outFunctionTree);
634PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_differentiateCalls(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_metatype _maxIter, modelica_metatype *out_outFunctionTree);
635static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_differentiateCalls,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_differentiateCalls
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_differentiateCalls,0}};
636#define boxvar_Differentiate_differentiateCalls((void*)((char*)(&(boxvar_lit_Differentiate_differentiateCalls
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_differentiateCalls)((void*)((char*)(&(boxvar_lit_Differentiate_differentiateCalls
).header) + 3))
637PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiateCrefs(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_integer _maxIter, modelica_metatype *out_outFunctionTree);
638PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_differentiateCrefs(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_metatype _maxIter, modelica_metatype *out_outFunctionTree);
639static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_differentiateCrefs,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_differentiateCrefs
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_differentiateCrefs,0}};
640#define boxvar_Differentiate_differentiateCrefs((void*)((char*)(&(boxvar_lit_Differentiate_differentiateCrefs
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_differentiateCrefs)((void*)((char*)(&(boxvar_lit_Differentiate_differentiateCrefs
).header) + 3))
641PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_makeAssignmentfromTuple(threadData_t *threadData, modelica_metatype _inTpl, modelica_metatype _source, modelica_metatype _inFunctionTree);
642static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_makeAssignmentfromTuple,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_makeAssignmentfromTuple
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_makeAssignmentfromTupleomc_Differentiate_makeAssignmentfromTuple,0}};
643#define boxvar_Differentiate_makeAssignmentfromTuple((void*)((char*)(&(boxvar_lit_Differentiate_makeAssignmentfromTuple
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_makeAssignmentfromTuple)((void*)((char*)(&(boxvar_lit_Differentiate_makeAssignmentfromTuple
).header) + 3))
644PROTECTED_FUNCTION_STATIC modelica_boolean omc_Differentiate_isDiscreteAssignStatment(threadData_t *threadData, modelica_metatype _inStmt);
645PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_isDiscreteAssignStatment(threadData_t *threadData, modelica_metatype _inStmt);
646static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_isDiscreteAssignStatment,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_isDiscreteAssignStatment
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_isDiscreteAssignStatment,0}};
647#define boxvar_Differentiate_isDiscreteAssignStatment((void*)((char*)(&(boxvar_lit_Differentiate_isDiscreteAssignStatment
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_isDiscreteAssignStatment)((void*)((char*)(&(boxvar_lit_Differentiate_isDiscreteAssignStatment
).header) + 3))
648PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiateStatements(threadData_t *threadData, modelica_metatype _inStmts, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inStmtsAccum, modelica_metatype _inFunctionTree, modelica_integer _maxIter, modelica_metatype *out_outFunctionTree);
649PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_differentiateStatements(threadData_t *threadData, modelica_metatype _inStmts, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inStmtsAccum, modelica_metatype _inFunctionTree, modelica_metatype _maxIter, modelica_metatype *out_outFunctionTree);
650static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_differentiateStatements,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_differentiateStatements
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_differentiateStatements,0}};
651#define boxvar_Differentiate_differentiateStatements((void*)((char*)(&(boxvar_lit_Differentiate_differentiateStatements
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_differentiateStatements)((void*)((char*)(&(boxvar_lit_Differentiate_differentiateStatements
).header) + 3))
652PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiateExp(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_integer _maxIter, modelica_metatype *out_outFunctionTree);
653PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_differentiateExp(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_metatype _maxIter, modelica_metatype *out_outFunctionTree);
654static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_differentiateExp,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_differentiateExp
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_differentiateExp,0}};
655#define boxvar_Differentiate_differentiateExp((void*)((char*)(&(boxvar_lit_Differentiate_differentiateExp
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_differentiateExp)((void*)((char*)(&(boxvar_lit_Differentiate_differentiateExp
).header) + 3))
656PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiateWhenEquations(threadData_t *threadData, modelica_metatype _inWhenEquations, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_metatype *out_outFunctionTree);
657static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_differentiateWhenEquations,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_differentiateWhenEquations
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_differentiateWhenEquationsomc_Differentiate_differentiateWhenEquations,0}};
658#define boxvar_Differentiate_differentiateWhenEquations((void*)((char*)(&(boxvar_lit_Differentiate_differentiateWhenEquations
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_differentiateWhenEquations)((void*)((char*)(&(boxvar_lit_Differentiate_differentiateWhenEquations
).header) + 3))
659PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiateEquationsLst(threadData_t *threadData, modelica_metatype _inEquationsLst, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inEquationsLstAccum, modelica_metatype _inFunctionTree, modelica_metatype *out_outFunctionTree);
660static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_differentiateEquationsLst,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_differentiateEquationsLst
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_differentiateEquationsLstomc_Differentiate_differentiateEquationsLst,0}};
661#define boxvar_Differentiate_differentiateEquationsLst((void*)((char*)(&(boxvar_lit_Differentiate_differentiateEquationsLst
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_differentiateEquationsLst)((void*)((char*)(&(boxvar_lit_Differentiate_differentiateEquationsLst
).header) + 3))
662PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiateEquations(threadData_t *threadData, modelica_metatype _inEquations, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inEquationsAccum, modelica_metatype _inFunctionTree, modelica_metatype *out_outFunctionTree);
663static const MMC_DEFSTRUCTLIT(boxvar_lit_Differentiate_differentiateEquations,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_Differentiate_differentiateEquations
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_Differentiate_differentiateEquationsomc_Differentiate_differentiateEquations,0}};
664#define boxvar_Differentiate_differentiateEquations((void*)((char*)(&(boxvar_lit_Differentiate_differentiateEquations
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_Differentiate_differentiateEquations)((void*)((char*)(&(boxvar_lit_Differentiate_differentiateEquations
).header) + 3))
665
666PROTECTED_FUNCTION_STATIC void omc_Differentiate_dumpInputData(threadData_t *threadData, modelica_metatype _inDiffData)
667{
668 modelica_metatype _independenentVars = NULL((void*)0);
669 modelica_metatype _dependenentVars = NULL((void*)0);
670 modelica_metatype _knownVars = NULL((void*)0);
671 modelica_metatype _allVars = NULL((void*)0);
672 modelica_metatype _controlVars = NULL((void*)0);
673 modelica_metatype _diffCrefs = NULL((void*)0);
674 modelica_metatype _matrixName = NULL((void*)0);
675 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
676 MMC_SO()mmc_check_stackoverflow(threadData);
677 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
678 // _independenentVars has no default value.
679 // _dependenentVars has no default value.
680 // _knownVars has no default value.
681 // _allVars has no default value.
682 // _controlVars has no default value.
683 // _diffCrefs has no default value.
684 // _matrixName has no default value.
685#line 3222 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
686 fputs(MMC_STRINGDATA(_OMC_LIT0)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT0).header) + 3))) - 3)))->data)
,stdoutstdout);
687#line 687 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
688
689#line 3223 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
690 if(isSome((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_inDiffData), 8))))(0==((((((*(mmc_uint_t*)((void*)((char*)(((*(void**)(((void*)
((void**)(((void*)((char*)(_inDiffData) - 3))) + (8))))))) - 3
)))) & (7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)((
(*(void**)(((void*)((void**)(((void*)((char*)(_inDiffData) - 3
))) + (8))))))) - 3)))) >> (3+3))) : (((*(mmc_uint_t*)(
(void*)((char*)(((*(void**)(((void*)((void**)(((void*)((char*
)(_inDiffData) - 3))) + (8))))))) - 3)))) >> 10)) ? 0 :
1)
)
691#line 3223 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
692 {
693#line 3224 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
694 tmpMeta[0] = stringAppend(_OMC_LIT1((void*)((char*)(&(_OMC_LIT_STRUCT1).header) + 3)),omc_Util_getOption(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_inDiffData), 8))(*(void**)(((void*)((void**)(((void*)((char*)(_inDiffData) - 3
))) + (8)))))
)));
695#line 3224 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
696 tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT2((void*)((char*)(&(_OMC_LIT_STRUCT2).header) + 3)));
697#line 3224 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
698 fputs(MMC_STRINGDATA(tmpMeta[1])(((struct mmc_string*)((void*)((char*)(tmpMeta[1]) - 3)))->
data)
,stdoutstdout);
699#line 699 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
700 }
701
702#line 3226 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
703 if(isSome((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_inDiffData), 2))))(0==((((((*(mmc_uint_t*)((void*)((char*)(((*(void**)(((void*)
((void**)(((void*)((char*)(_inDiffData) - 3))) + (2))))))) - 3
)))) & (7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)((
(*(void**)(((void*)((void**)(((void*)((char*)(_inDiffData) - 3
))) + (2))))))) - 3)))) >> (3+3))) : (((*(mmc_uint_t*)(
(void*)((char*)(((*(void**)(((void*)((void**)(((void*)((char*
)(_inDiffData) - 3))) + (2))))))) - 3)))) >> 10)) ? 0 :
1)
)
704#line 3226 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
705 {
706#line 3227 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
707 fputs(MMC_STRINGDATA(_OMC_LIT3)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT3).header) + 3))) - 3)))->data)
,stdoutstdout);
708#line 708 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
709
710#line 3228 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
711 omc_BackendDump_printVariables(threadData, omc_Util_getOption(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_inDiffData), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_inDiffData) - 3
))) + (2)))))
)));
712#line 712 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
713 }
714
715#line 3230 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
716 if(isSome((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_inDiffData), 3))))(0==((((((*(mmc_uint_t*)((void*)((char*)(((*(void**)(((void*)
((void**)(((void*)((char*)(_inDiffData) - 3))) + (3))))))) - 3
)))) & (7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)((
(*(void**)(((void*)((void**)(((void*)((char*)(_inDiffData) - 3
))) + (3))))))) - 3)))) >> (3+3))) : (((*(mmc_uint_t*)(
(void*)((char*)(((*(void**)(((void*)((void**)(((void*)((char*
)(_inDiffData) - 3))) + (3))))))) - 3)))) >> 10)) ? 0 :
1)
)
717#line 3230 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
718 {
719#line 3231 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
720 fputs(MMC_STRINGDATA(_OMC_LIT4)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT4).header) + 3))) - 3)))->data)
,stdoutstdout);
721#line 721 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
722
723#line 3232 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
724 omc_BackendDump_printVariables(threadData, omc_Util_getOption(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_inDiffData), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_inDiffData) - 3
))) + (3)))))
)));
725#line 725 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
726 }
727
728#line 3234 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
729 if(isSome((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_inDiffData), 4))))(0==((((((*(mmc_uint_t*)((void*)((char*)(((*(void**)(((void*)
((void**)(((void*)((char*)(_inDiffData) - 3))) + (4))))))) - 3
)))) & (7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)((
(*(void**)(((void*)((void**)(((void*)((char*)(_inDiffData) - 3
))) + (4))))))) - 3)))) >> (3+3))) : (((*(mmc_uint_t*)(
(void*)((char*)(((*(void**)(((void*)((void**)(((void*)((char*
)(_inDiffData) - 3))) + (4))))))) - 3)))) >> 10)) ? 0 :
1)
)
730#line 3234 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
731 {
732#line 3235 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
733 fputs(MMC_STRINGDATA(_OMC_LIT5)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT5).header) + 3))) - 3)))->data)
,stdoutstdout);
734#line 734 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
735
736#line 3236 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
737 omc_BackendDump_printVariables(threadData, omc_Util_getOption(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_inDiffData), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_inDiffData) - 3
))) + (4)))))
)));
738#line 738 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
739 }
740
741#line 3238 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
742 if(isSome((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_inDiffData), 5))))(0==((((((*(mmc_uint_t*)((void*)((char*)(((*(void**)(((void*)
((void**)(((void*)((char*)(_inDiffData) - 3))) + (5))))))) - 3
)))) & (7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)((
(*(void**)(((void*)((void**)(((void*)((char*)(_inDiffData) - 3
))) + (5))))))) - 3)))) >> (3+3))) : (((*(mmc_uint_t*)(
(void*)((char*)(((*(void**)(((void*)((void**)(((void*)((char*
)(_inDiffData) - 3))) + (5))))))) - 3)))) >> 10)) ? 0 :
1)
)
743#line 3238 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
744 {
745#line 3239 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
746 fputs(MMC_STRINGDATA(_OMC_LIT6)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT6).header) + 3))) - 3)))->data)
,stdoutstdout);
747#line 747 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
748
749#line 3240 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
750 omc_BackendDump_printVariables(threadData, omc_Util_getOption(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_inDiffData), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_inDiffData) - 3
))) + (5)))))
)));
751#line 751 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
752 }
753
754#line 3242 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
755 if((!listEmpty((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_inDiffData), 6))))((*(mmc_uint_t*)((void*)((char*)(((*(void**)(((void*)((void**
)(((void*)((char*)(_inDiffData) - 3))) + (6))))))) - 3))) == (
((0) << 10) + (((0) & 255) << 2)))
))
756#line 3242 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
757 {
758#line 3243 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
759 fputs(MMC_STRINGDATA(_OMC_LIT7)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT7).header) + 3))) - 3)))->data)
,stdoutstdout);
760#line 760 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
761
762#line 3244 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
763 omc_BackendDump_printVarList(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_inDiffData), 6))(*(void**)(((void*)((void**)(((void*)((char*)(_inDiffData) - 3
))) + (6)))))
));
764#line 764 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
765 }
766
767#line 3246 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
768 if((!listEmpty((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_inDiffData), 7))))((*(mmc_uint_t*)((void*)((char*)(((*(void**)(((void*)((void**
)(((void*)((char*)(_inDiffData) - 3))) + (7))))))) - 3))) == (
((0) << 10) + (((0) & 255) << 2)))
))
769#line 3246 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
770 {
771#line 3247 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
772 tmpMeta[0] = stringAppend(_OMC_LIT8((void*)((char*)(&(_OMC_LIT_STRUCT8).header) + 3)),omc_ComponentReference_printComponentRefListStr(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_inDiffData), 7))(*(void**)(((void*)((void**)(((void*)((char*)(_inDiffData) - 3
))) + (7)))))
)));
773#line 3247 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
774 tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)));
775#line 3247 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
776 fputs(MMC_STRINGDATA(tmpMeta[1])(((struct mmc_string*)((void*)((char*)(tmpMeta[1]) - 3)))->
data)
,stdoutstdout);
777#line 777 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
778 }
779 _return: OMC_LABEL_UNUSED__attribute__((unused))
780 return;
781}
782
783PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_addElementVars2Dep(threadData_t *threadData, modelica_metatype _inElementLstVars, modelica_metatype _inFunctions, modelica_metatype _inDiffData, modelica_metatype *out_outEqnsLst)
784{
785 modelica_metatype _outDiffData = NULL((void*)0);
786 modelica_metatype _outEqnsLst = NULL((void*)0);
787 modelica_metatype _varsLst = NULL((void*)0);
788 MMC_SO()mmc_check_stackoverflow(threadData);
789 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
790 // _outDiffData has no default value.
791 // _outEqnsLst has no default value.
792 // _varsLst has no default value.
793#line 793 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
794 { /* matchcontinue expression */
795 {
796 volatile mmc_switch_type tmp3;
797 int tmp4;
798 tmp3 = 0;
799 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) {
800 tmp2_top:
801 threadData->mmc_jumper = &new_mmc_jumper;
802 for (; tmp3 < 2; tmp3++) {
803 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
804 case 0: {
805 /* Pattern matching succeeded */
806#line 3203 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
807 _varsLst = omc_Differentiate_lowerVarsElementVars(threadData, _inElementLstVars, _inFunctions ,&_outEqnsLst, NULL((void*)0));
808#line 808 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
809
810#line 3204 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
811 _outDiffData = omc_Differentiate_addDependentVars(threadData, _varsLst, _inDiffData);
812#line 812 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
813#line 813 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
814 goto tmp2_done;
815 }
816 case 1: {
817 /* Pattern matching succeeded */
818#line 3206 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
819 omc_Error_addMessage(threadData, _OMC_LIT14((void*)((char*)(&(_OMC_LIT_STRUCT14).header) + 3)), _OMC_LIT16((void*)((char*)(&(_OMC_LIT_STRUCT16).header) + 3)));
820#line 820 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
821
822#line 3207 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
823 goto goto_1;
824#line 824 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
825#line 825 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
826 goto tmp2_done;
827 }
828 }
829 goto tmp2_end;
830 tmp2_end: ;
831 }
832 goto goto_1;
833 tmp2_done:
834 (void)tmp3;
835 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
836 goto tmp2_done2;
837 goto_1:;
838 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
839 if (++tmp3 < 2) {
840 goto tmp2_top;
841 }
842 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
843 tmp2_done2:;
844 }
845 }
846 ;
847 _return: OMC_LABEL_UNUSED__attribute__((unused))
848 if (out_outEqnsLst) { *out_outEqnsLst = _outEqnsLst; }
849 return _outDiffData;
850}
851
852PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_lowerVarsElementVars(threadData_t *threadData, modelica_metatype _inElementLstVars, modelica_metatype _functions, modelica_metatype *out_eqnsLst, modelica_metatype *out_reqnsLst)
853{
854 modelica_metatype _varsLst = NULL((void*)0);
855 modelica_metatype _eqnsLst = NULL((void*)0);
856 modelica_metatype _reqnsLst = NULL((void*)0);
857 modelica_metatype _vars = NULL((void*)0);
858 modelica_metatype _knvars = NULL((void*)0);
859 modelica_metatype _exvars = NULL((void*)0);
860 modelica_metatype tmpMeta[5] __attribute__((unused)) = {0};
861 MMC_SO()mmc_check_stackoverflow(threadData);
862 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
863 // _varsLst has no default value.
864 // _eqnsLst has no default value.
865 // _reqnsLst has no default value.
866 // _vars has no default value.
867 // _knvars has no default value.
868 // _exvars has no default value.
869#line 869 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
870 { /* matchcontinue expression */
871 {
872 volatile mmc_switch_type tmp3;
873 int tmp4;
874 tmp3 = 0;
875 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) {
876 tmp2_top:
877 threadData->mmc_jumper = &new_mmc_jumper;
878 for (; tmp3 < 2; tmp3++) {
879 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
880 case 0: {
881 /* Pattern matching succeeded */
882#line 3184 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
883 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
884#line 3184 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
885 tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
886#line 3184 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
887 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
888#line 3184 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
889 tmpMeta[3] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
890#line 3184 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
891 tmpMeta[4] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
892#line 3184 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
893 _vars = omc_BackendDAECreate_lowerVars(threadData, _inElementLstVars, _functions, tmpMeta[0], tmpMeta[1], tmpMeta[2], tmpMeta[3], tmpMeta[4] ,&_knvars ,&_exvars ,&_eqnsLst ,&_reqnsLst);
894#line 894 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
895
896#line 3186 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
897 _varsLst = listAppend(_exvars, listAppend(_vars, _knvars));
898#line 898 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
899#line 899 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
900 goto tmp2_done;
901 }
902 case 1: {
903 modelica_boolean tmp5;
904 /* Pattern matching succeeded */
905#line 3188 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
906 /* Pattern-matching assignment */
907#line 3188 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
908 tmp5 = omc_Flags_isSet(threadData, _OMC_LIT20((void*)((char*)(&(_OMC_LIT_STRUCT20).header) + 3)));
909#line 3188 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
910 if (1 != tmp5) goto goto_1;
911#line 911 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
912
913#line 3189 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
914 omc_Debug_traceln(threadData, _OMC_LIT21((void*)((char*)(&(_OMC_LIT_STRUCT21).header) + 3)));
915#line 915 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
916#line 916 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
917 goto tmp2_done;
918 }
919 }
920 goto tmp2_end;
921 tmp2_end: ;
922 }
923 goto goto_1;
924 tmp2_done:
925 (void)tmp3;
926 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
927 goto tmp2_done2;
928 goto_1:;
929 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
930 if (++tmp3 < 2) {
931 goto tmp2_top;
932 }
933 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
934 tmp2_done2:;
935 }
936 }
937 ;
938 _return: OMC_LABEL_UNUSED__attribute__((unused))
939 if (out_eqnsLst) { *out_eqnsLst = _eqnsLst; }
940 if (out_reqnsLst) { *out_reqnsLst = _reqnsLst; }
941 return _varsLst;
942}
943
944PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_addGlobalVars(threadData_t *threadData, modelica_metatype _inVarsLst, modelica_metatype _inDiffData)
945{
946 modelica_metatype _outDiffData = NULL((void*)0);
947 modelica_metatype _glVars = NULL((void*)0);
948 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
949 MMC_SO()mmc_check_stackoverflow(threadData);
950 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
951 _outDiffData = _inDiffData;
952 // _glVars has no default value.
953#line 3166 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
954 if(isSome((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_outDiffData), 4))))(0==((((((*(mmc_uint_t*)((void*)((char*)(((*(void**)(((void*)
((void**)(((void*)((char*)(_outDiffData) - 3))) + (4))))))) -
3)))) & (7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)
(((*(void**)(((void*)((void**)(((void*)((char*)(_outDiffData)
- 3))) + (4))))))) - 3)))) >> (3+3))) : (((*(mmc_uint_t
*)((void*)((char*)(((*(void**)(((void*)((void**)(((void*)((char
*)(_outDiffData) - 3))) + (4))))))) - 3)))) >> 10)) ? 0
: 1)
)
955#line 3166 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
956 {
957#line 3167 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
958 _glVars = omc_BackendVariable_addVars(threadData, _inVarsLst, omc_Util_getOption(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_outDiffData), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_outDiffData) -
3))) + (4)))))
)));
959#line 959 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
960 }
961 else
962 {
963#line 3169 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
964 _glVars = omc_BackendVariable_listVar(threadData, _inVarsLst);
965#line 965 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
966 }
967
968#line 3171 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
969 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(10))((void*)((char*)(mmc_alloc_words(10)) + 3));
970#line 3171 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
971 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_outDiffData)((void*)((char*)(_outDiffData) - 3)), 10*sizeof(modelica_metatype));
972#line 3171 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
973 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[4] = mmc_mk_some(_glVars);
974#line 3171 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
975 _outDiffData = tmpMeta[0];
976#line 976 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
977 _return: OMC_LABEL_UNUSED__attribute__((unused))
978 return _outDiffData;
979}
980
981PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_addAllVars(threadData_t *threadData, modelica_metatype _inVarsLst, modelica_metatype _inDiffData)
982{
983 modelica_metatype _outDiffData = NULL((void*)0);
984 modelica_metatype _allVars = NULL((void*)0);
985 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
986 MMC_SO()mmc_check_stackoverflow(threadData);
987 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
988 _outDiffData = _inDiffData;
989 // _allVars has no default value.
990#line 3151 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
991 if(isSome((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_outDiffData), 5))))(0==((((((*(mmc_uint_t*)((void*)((char*)(((*(void**)(((void*)
((void**)(((void*)((char*)(_outDiffData) - 3))) + (5))))))) -
3)))) & (7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)
(((*(void**)(((void*)((void**)(((void*)((char*)(_outDiffData)
- 3))) + (5))))))) - 3)))) >> (3+3))) : (((*(mmc_uint_t
*)((void*)((char*)(((*(void**)(((void*)((void**)(((void*)((char
*)(_outDiffData) - 3))) + (5))))))) - 3)))) >> 10)) ? 0
: 1)
)
992#line 3151 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
993 {
994#line 3152 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
995 _allVars = omc_BackendVariable_addVars(threadData, _inVarsLst, omc_Util_getOption(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_outDiffData), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_outDiffData) -
3))) + (5)))))
)));
996#line 996 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
997 }
998 else
999 {
1000#line 3154 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1001 _allVars = omc_BackendVariable_listVar(threadData, _inVarsLst);
1002#line 1002 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1003 }
1004
1005#line 3156 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1006 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(10))((void*)((char*)(mmc_alloc_words(10)) + 3));
1007#line 3156 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1008 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_outDiffData)((void*)((char*)(_outDiffData) - 3)), 10*sizeof(modelica_metatype));
1009#line 3156 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1010 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[5] = mmc_mk_some(_allVars);
1011#line 3156 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1012 _outDiffData = tmpMeta[0];
1013#line 1013 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1014 _return: OMC_LABEL_UNUSED__attribute__((unused))
1015 return _outDiffData;
1016}
1017
1018PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_addDependentVars(threadData_t *threadData, modelica_metatype _inVarsLst, modelica_metatype _inDiffData)
1019{
1020 modelica_metatype _outDiffData = NULL((void*)0);
1021 modelica_metatype _depVars = NULL((void*)0);
1022 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
1023 MMC_SO()mmc_check_stackoverflow(threadData);
1024 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1025 _outDiffData = _inDiffData;
1026 // _depVars has no default value.
1027#line 3136 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1028 if(isSome((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_outDiffData), 3))))(0==((((((*(mmc_uint_t*)((void*)((char*)(((*(void**)(((void*)
((void**)(((void*)((char*)(_outDiffData) - 3))) + (3))))))) -
3)))) & (7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)
(((*(void**)(((void*)((void**)(((void*)((char*)(_outDiffData)
- 3))) + (3))))))) - 3)))) >> (3+3))) : (((*(mmc_uint_t
*)((void*)((char*)(((*(void**)(((void*)((void**)(((void*)((char
*)(_outDiffData) - 3))) + (3))))))) - 3)))) >> 10)) ? 0
: 1)
)
1029#line 3136 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1030 {
1031#line 3137 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1032 _depVars = omc_BackendVariable_addVars(threadData, _inVarsLst, omc_Util_getOption(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_outDiffData), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_outDiffData) -
3))) + (3)))))
)));
1033#line 1033 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1034 }
1035 else
1036 {
1037#line 3139 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1038 _depVars = omc_BackendVariable_listVar(threadData, _inVarsLst);
1039#line 1039 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1040 }
1041
1042#line 3141 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1043 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(10))((void*)((char*)(mmc_alloc_words(10)) + 3));
1044#line 3141 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1045 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_outDiffData)((void*)((char*)(_outDiffData) - 3)), 10*sizeof(modelica_metatype));
1046#line 3141 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1047 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[3] = mmc_mk_some(_depVars);
1048#line 3141 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1049 _outDiffData = tmpMeta[0];
1050#line 1050 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1051 _return: OMC_LABEL_UNUSED__attribute__((unused))
1052 return _outDiffData;
1053}
1054
1055PROTECTED_FUNCTION_STATIC modelica_boolean omc_Differentiate_diffableTypes(threadData_t *threadData, modelica_metatype _inType)
1056{
1057 modelica_boolean _out;
1058 boolean_array _b;
1059 MMC_SO()mmc_check_stackoverflow(threadData);
1060 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1061 // _out has no default value.
1062 alloc_boolean_array(&(_b), 1, 2); // _b has no default value.
1063#line 3119 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1064 boolean_array_get(_b, 1, ((modelica_integer) 1))(*(modelica_boolean*)(boolean_array_element_addr(&_b, 1, (
(modelica_integer) 1))))
= omc_Types_isRealOrSubTypeReal(threadData, _inType);
1065#line 1065 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1066
1067#line 3120 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1068 boolean_array_get(_b, 1, ((modelica_integer) 2))(*(modelica_boolean*)(boolean_array_element_addr(&_b, 1, (
(modelica_integer) 2))))
= omc_Types_isRecord(threadData, _inType);
1069#line 1069 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1070
1071#line 3121 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1072 _out = ((*boolean_array_element_addr1(&_b, 1, ((modelica_integer) 1))) || (*boolean_array_element_addr1(&_b, 1, ((modelica_integer) 2))));
1073#line 1073 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1074 _return: OMC_LABEL_UNUSED__attribute__((unused))
1075 return _out;
1076}
1077PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_diffableTypes(threadData_t *threadData, modelica_metatype _inType)
1078{
1079 modelica_boolean _out;
1080 modelica_metatype out_out;
1081 _out = omc_Differentiate_diffableTypes(threadData, _inType);
1082 out_out = mmc_mk_icon(_out);
1083 return out_out;
1084}
1085
1086PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_getFunctionMapper1(threadData_t *threadData, modelica_metatype _inFuncDefs)
1087{
1088 modelica_metatype _mapper = NULL((void*)0);
1089 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
1090 MMC_SO()mmc_check_stackoverflow(threadData);
1091 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1092 // _mapper has no default value.
1093#line 1093 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1094 { /* matchcontinue expression */
1095 volatile modelica_metatype tmp3_1;
1096 tmp3_1 = _inFuncDefs;
1097 {
1098 modelica_metatype _m = NULL((void*)0);
1099 modelica_metatype _funcDefs = NULL((void*)0);
1100 volatile mmc_switch_type tmp3;
1101 int tmp4;
1102 // _m has no default value.
1103 // _funcDefs has no default value.
1104 tmp3 = 0;
1105 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) {
1106 tmp2_top:
1107 threadData->mmc_jumper = &new_mmc_jumper;
1108 for (; tmp3 < 3; tmp3++) {
1109 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
1110 case 0: {
1111 if (listEmpty(tmp3_1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp2_end;
1112 tmpMeta[1] = MMC_CAR(tmp3_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(1)))))
;
1113 tmpMeta[2] = MMC_CDR(tmp3_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
1114 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],2,6)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((6 +1)
<< 10) + (((2 +3) & 255) << 2)))
== 0) goto tmp2_end;
1115
1116 _m = tmpMeta[1];
1117 /* Pattern matching succeeded */
1118#line 3099 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1119 tmpMeta[0] = _m;
1120#line 1120 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1121 goto tmp2_done;
1122 }
1123 case 1: {
1124 if (listEmpty(tmp3_1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp2_end;
1125 tmpMeta[1] = MMC_CAR(tmp3_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(1)))))
;
1126 tmpMeta[2] = MMC_CDR(tmp3_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
1127 _funcDefs = tmpMeta[2];
1128 /* Pattern matching succeeded */
1129#line 3102 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1130 tmpMeta[0] = omc_Differentiate_getFunctionMapper1(threadData, _funcDefs);
1131#line 1131 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1132 goto tmp2_done;
1133 }
1134 case 2: {
1135 modelica_boolean tmp5;
1136
1137 /* Pattern matching succeeded */
1138#line 3106 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1139 /* Pattern-matching assignment */
1140#line 3106 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1141 tmp5 = omc_Flags_isSet(threadData, _OMC_LIT20((void*)((char*)(&(_OMC_LIT_STRUCT20).header) + 3)));
1142#line 3106 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1143 if (1 != tmp5) goto goto_1;
1144#line 1144 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1145
1146#line 3107 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1147 omc_Debug_trace(threadData, _OMC_LIT22((void*)((char*)(&(_OMC_LIT_STRUCT22).header) + 3)));
1148#line 1148 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1149#line 3108 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1150 goto goto_1;
1151#line 1151 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1152 goto tmp2_done;
1153 }
1154 }
1155 goto tmp2_end;
1156 tmp2_end: ;
1157 }
1158 goto goto_1;
1159 tmp2_done:
1160 (void)tmp3;
1161 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
1162 goto tmp2_done2;
1163 goto_1:;
1164 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
1165 if (++tmp3 < 3) {
1166 goto tmp2_top;
1167 }
1168 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1169 tmp2_done2:;
1170 }
1171 }
1172 _mapper = tmpMeta[0];
1173 _return: OMC_LABEL_UNUSED__attribute__((unused))
1174 return _mapper;
1175}
1176
1177DLLExport
1178modelica_metatype omc_Differentiate_getFunctionMapper(threadData_t *threadData, modelica_metatype _fname, modelica_metatype _functions, modelica_metatype *out_tp)
1179{
1180 modelica_metatype _mapper = NULL((void*)0);
1181 modelica_metatype _tp = NULL((void*)0);
1182 modelica_metatype tmpMeta[6] __attribute__((unused)) = {0};
1183 MMC_SO()mmc_check_stackoverflow(threadData);
1184 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1185 // _mapper has no default value.
1186 // _tp has no default value.
1187#line 3067 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1188
1189#line 3067 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1190
1191#line 1191 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1192 { /* matchcontinue expression */
1193 {
1194 modelica_metatype _flst = NULL((void*)0);
1195 modelica_metatype _t = NULL((void*)0);
1196 modelica_metatype _m = NULL((void*)0);
1197 modelica_string _s = NULL((void*)0);
1198 volatile mmc_switch_type tmp4;
1199 int tmp5;
1200 // _flst has no default value.
1201 // _t has no default value.
1202 // _m has no default value.
1203 // _s has no default value.
1204 tmp4 = 0;
1205 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) {
1206 tmp3_top:
1207 threadData->mmc_jumper = &new_mmc_jumper;
1208 for (; tmp4 < 2; tmp4++) {
1209 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
1210 case 0: {
1211 /* Pattern matching succeeded */
1212#line 3075 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1213 /* Pattern-matching assignment */
1214#line 3075 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1215 tmpMeta[2] = omc_DAE_AvlTreePathFunction_get(threadData, _functions, _fname);
1216#line 3075 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1217 if (optionNone(tmpMeta[2])(0==((((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))) &
(7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2])
- 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char*)
(tmpMeta[2]) - 3)))) >> 10)) ? 1 : 0)
) goto goto_2;
1218#line 3075 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1219 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (1)))))
;
1220#line 3075 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1221 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],0,9)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3)))==(((9 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto goto_2;
1222#line 3075 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1223 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (3)))))
;
1224#line 3075 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1225 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (4)))))
;
1226#line 3075 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1227 _flst = tmpMeta[4];
1228#line 3075 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1229 _t = tmpMeta[5];
1230#line 1230 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1231
1232#line 3076 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1233 _m = omc_Differentiate_getFunctionMapper1(threadData, _flst);
1234#line 1234 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1235#line 3077 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1236 tmpMeta[0+0] = _m;
1237#line 3077 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1238 tmpMeta[0+1] = _t;
1239#line 1239 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1240 goto tmp3_done;
1241 }
1242 case 1: {
1243 modelica_boolean tmp6;
1244 /* Pattern matching succeeded */
1245#line 3080 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1246 /* Pattern-matching assignment */
1247#line 3080 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1248 tmp6 = omc_Flags_isSet(threadData, _OMC_LIT20((void*)((char*)(&(_OMC_LIT_STRUCT20).header) + 3)));
1249#line 3080 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1250 if (1 != tmp6) goto goto_2;
1251#line 1251 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1252
1253#line 3081 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1254 _s = omc_AbsynUtil_pathString(threadData, _fname, _OMC_LIT23((void*)((char*)(&(_OMC_LIT_STRUCT23).header) + 3)), 1, 0);
1255#line 1255 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1256
1257#line 3082 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1258 tmpMeta[2] = stringAppend(_OMC_LIT24((void*)((char*)(&(_OMC_LIT_STRUCT24).header) + 3)),_s);
1259#line 3082 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1260 _s = tmpMeta[2];
1261#line 1261 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1262
1263#line 3083 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1264 omc_Debug_traceln(threadData, _s);
1265#line 1265 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1266#line 3084 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1267 goto goto_2;
1268#line 1268 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1269 goto tmp3_done;
1270 }
1271 }
1272 goto tmp3_end;
1273 tmp3_end: ;
1274 }
1275 goto goto_2;
1276 tmp3_done:
1277 (void)tmp4;
1278 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
1279 goto tmp3_done2;
1280 goto_2:;
1281 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
1282 if (++tmp4 < 2) {
1283 goto tmp3_top;
1284 }
1285 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1286 tmp3_done2:;
1287 }
1288 }
1289 _mapper = tmpMeta[0+0];
1290 _tp = tmpMeta[0+1];
1291 _return: OMC_LABEL_UNUSED__attribute__((unused))
1292 if (out_tp) { *out_tp = _tp; }
1293 return _mapper;
1294}
1295
1296PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_getlowerOrderDerivative(threadData_t *threadData, modelica_metatype _fname, modelica_metatype _functions)
1297{
1298 modelica_metatype _outFName = NULL((void*)0);
1299 modelica_metatype tmpMeta[4] __attribute__((unused)) = {0};
1300 MMC_SO()mmc_check_stackoverflow(threadData);
1301 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1302 // _outFName has no default value.
1303#line 1303 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1304 { /* match expression */
1305 {
1306 modelica_metatype _flst = NULL((void*)0);
1307 modelica_metatype _lowerOrderDerivatives = NULL((void*)0);
1308 volatile mmc_switch_type tmp3;
1309 int tmp4;
1310 // _flst has no default value.
1311 // _lowerOrderDerivatives has no default value.
1312 tmp3 = 0;
1313 for (; tmp3 < 1; tmp3++) {
1314 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
1315 case 0: {
1316 /* Pattern matching succeeded */
1317#line 3054 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1318 /* Pattern-matching assignment */
1319#line 3054 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1320 tmpMeta[1] = omc_DAE_AvlTreePathFunction_get(threadData, _functions, _fname);
1321#line 3054 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1322 if (optionNone(tmpMeta[1])(0==((((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))) &
(7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1])
- 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char*)
(tmpMeta[1]) - 3)))) >> 10)) ? 1 : 0)
) goto goto_1;
1323#line 3054 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1324 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (1)))))
;
1325#line 3054 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1326 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],0,9)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))==(((9 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto goto_1;
1327#line 3054 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1328 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (3)))))
;
1329#line 3054 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1330 _flst = tmpMeta[3];
1331#line 1331 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1332
1333#line 3055 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1334 /* Pattern-matching assignment */
1335#line 3055 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1336 tmpMeta[1] = omc_Differentiate_getFunctionMapper1(threadData, _flst);
1337#line 3055 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1338 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],2,6)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((6 +1)
<< 10) + (((2 +3) & 255) << 2)))
== 0) goto goto_1;
1339#line 3055 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1340 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 7))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (7)))))
;
1341#line 3055 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1342 _lowerOrderDerivatives = tmpMeta[2];
1343#line 1343 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1344#line 3056 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1345 tmpMeta[0] = omc_List_last(threadData, _lowerOrderDerivatives);
1346#line 1346 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1347 goto tmp2_done;
1348 }
1349 }
1350 goto tmp2_end;
1351 tmp2_end: ;
1352 }
1353 goto goto_1;
1354 goto_1:;
1355 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1356 goto tmp2_done;
1357 tmp2_done:;
1358 }
1359 }
1360 _outFName = tmpMeta[0];
1361 _return: OMC_LABEL_UNUSED__attribute__((unused))
1362 return _outFName;
1363}
1364
1365PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_checkDerFunctionConds(threadData_t *threadData, modelica_metatype _inbarr, modelica_metatype _icrlst, modelica_metatype _expl, modelica_metatype _inDiffArgs)
1366{
1367 modelica_metatype _outblst = NULL((void*)0);
1368 modelica_integer _i;
1369 modelica_metatype _dc = NULL((void*)0);
1370 modelica_metatype _e = NULL((void*)0);
1371 modelica_metatype _p1 = NULL((void*)0);
1372 modelica_metatype _p2 = NULL((void*)0);
1373 modelica_metatype _ba = NULL((void*)0);
1374 modelica_metatype _diffwrtCref = NULL((void*)0);
1375 modelica_metatype _inputData = NULL((void*)0);
1376 modelica_metatype _diffType = NULL((void*)0);
1377 modelica_metatype _functionTree = NULL((void*)0);
1378 modelica_integer tmp1;
1379 modelica_metatype tmpMeta[5] __attribute__((unused)) = {0};
1380 MMC_SO()mmc_check_stackoverflow(threadData);
1381 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1382 // _outblst has no default value.
1383 // _i has no default value.
1384 // _dc has no default value.
1385 // _e has no default value.
1386 // _p1 has no default value.
1387 // _p2 has no default value.
1388 _ba = _inbarr;
1389 // _diffwrtCref has no default value.
1390 // _inputData has no default value.
1391 // _diffType has no default value.
1392 // _functionTree has no default value.
1393#line 2999 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1394 /* Pattern-matching assignment */
1395#line 2999 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1396 tmpMeta[0] = _inDiffArgs;
1397#line 2999 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1398 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (1)))))
;
1399#line 2999 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1400 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (2)))))
;
1401#line 2999 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1402 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (3)))))
;
1403#line 2999 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1404 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (4)))))
;
1405#line 2999 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1406 _diffwrtCref = tmpMeta[1];
1407#line 2999 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1408 _inputData = tmpMeta[2];
1409#line 2999 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1410 _diffType = tmpMeta[3];
1411#line 2999 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1412 _functionTree = tmpMeta[4];
1413#line 1413 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1414
1415#line 3001 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1416 {
1417#line 3001 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1418 modelica_metatype _tpl;
1419#line 3001 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1420 for (tmpMeta[0] = _icrlst; !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)))))
)
1421#line 3001 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1422 {
1423#line 3001 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1424 _tpl = MMC_CAR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (1)))))
;
1425#line 3002 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1426 /* Pattern-matching assignment */
1427#line 3002 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1428 tmpMeta[1] = _tpl;
1429#line 3002 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1430 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (1)))))
;
1431#line 3002 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1432 tmp1 = mmc_unbox_integer(tmpMeta[2])(((mmc_sint_t) (tmpMeta[2])) >> 1);
1433#line 3002 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1434 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
;
1435#line 3002 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1436 _i = tmp1 /* pattern as ty=Integer */;
1437#line 3002 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1438 _dc = tmpMeta[3];
1439#line 1439 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1440
1441#line 1441 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1442 { /* matchcontinue expression */
1443 volatile modelica_metatype tmp4_1;
1444 tmp4_1 = _dc;
1445 {
1446 volatile mmc_switch_type tmp4;
1447 int tmp5;
1448 tmp4 = 0;
1449 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) {
1450 tmp3_top:
1451 threadData->mmc_jumper = &new_mmc_jumper;
1452 for (; tmp4 < 4; tmp4++) {
1453 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
1454 case 0: {
1455 modelica_boolean tmp6;
1456 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,0)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((0 +1) <<
10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1457 tmp4 += 2; /* Pattern matching succeeded; we may skip some cases if we fail */
1458#line 3009 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1459 _e = listGet(_expl, _i)boxptr_listGet(threadData,_expl,mmc_mk_icon(_i));
1460#line 1460 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1461
1462#line 3011 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1463 _e = omc_Differentiate_differentiateExp(threadData, _e, _diffwrtCref, _inputData, _diffType, _functionTree, ((modelica_integer) 20) ,&_functionTree);
1464#line 1464 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1465
1466#line 3012 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1467 /* Pattern-matching assignment */
1468#line 3012 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1469 tmp6 = omc_Expression_isZero(threadData, _e);
1470#line 3012 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1471 if (1 != tmp6) goto goto_2;
1472#line 1472 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1473#line 1473 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1474 goto tmp3_done;
1475 }
1476 case 1: {
1477 modelica_boolean tmp7;
1478 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;
1479 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
1480 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],13,3)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((3 +1)
<< 10) + (((13 +3) & 255) << 2)))
== 0) goto tmp3_end;
1481 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
;
1482
1483 _p1 = tmpMeta[2];
1484 tmp4 += 1; /* Pattern matching succeeded; we may skip some cases if we fail */
1485#line 3019 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1486 /* Pattern-matching assignment */
1487#line 3019 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1488 tmpMeta[1] = listGet(_expl, _i)boxptr_listGet(threadData,_expl,mmc_mk_icon(_i));
1489#line 3019 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1490 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],13,3)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((3 +1)
<< 10) + (((13 +3) & 255) << 2)))
== 0) goto goto_2;
1491#line 3019 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1492 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
;
1493#line 3019 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1494 _p2 = tmpMeta[2];
1495#line 1495 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1496
1497#line 3020 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1498 /* Pattern-matching assignment */
1499#line 3020 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1500 tmp7 = omc_AbsynUtil_pathEqual(threadData, _p1, _p2);
1501#line 3020 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1502 if (1 != tmp7) goto goto_2;
1503#line 1503 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1504#line 1504 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1505 goto tmp3_done;
1506 }
1507 case 2: {
1508 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;
1509 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
1510 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],0,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((1 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1511
1512 /* Pattern matching succeeded */
1513#line 1513 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1514 goto tmp3_done;
1515 }
1516 case 3: {
1517 modelica_boolean tmp8;
1518
1519 /* Pattern matching succeeded */
1520#line 3028 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1521 /* Pattern-matching assignment */
1522#line 3028 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1523 tmp8 = omc_Flags_isSet(threadData, _OMC_LIT20((void*)((char*)(&(_OMC_LIT_STRUCT20).header) + 3)));
1524#line 3028 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1525 if (1 != tmp8) goto goto_2;
1526#line 1526 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1527
1528#line 3029 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1529 omc_Debug_traceln(threadData, _OMC_LIT25((void*)((char*)(&(_OMC_LIT_STRUCT25).header) + 3)));
1530#line 1530 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1531#line 3030 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1532 goto goto_2;
1533#line 1533 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1534 goto tmp3_done;
1535 }
1536 }
1537 goto tmp3_end;
1538 tmp3_end: ;
1539 }
1540 goto goto_2;
1541 tmp3_done:
1542 (void)tmp4;
1543 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
1544 goto tmp3_done2;
1545 goto_2:;
1546 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
1547 if (++tmp4 < 4) {
1548 goto tmp3_top;
1549 }
1550 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1551 tmp3_done2:;
1552 }
1553 }
1554 ;
1555
1556#line 3036 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1557 arrayUpdate(_ba, _i, mmc_mk_boolean(0))boxptr_arrayUpdate(threadData,_ba,mmc_mk_icon(_i),((0) != 0 ?
(mmc_mk_icon(1)) : (mmc_mk_icon(0))))
;
1558#line 1558 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1559 }
1560 }
1561
1562#line 3039 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1563 _outblst = arrayList(_ba);
1564#line 1564 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1565 _return: OMC_LABEL_UNUSED__attribute__((unused))
1566 return _outblst;
1567}
1568
1569PROTECTED_FUNCTION_STATIC modelica_boolean omc_Differentiate_checkDerivativeFunctionInputs(threadData_t *threadData, modelica_metatype _blst, modelica_metatype _tp, modelica_metatype _dtp, modelica_metatype *out_outExpectedTypeLst)
1570{
1571 modelica_boolean _outBoolean;
1572 modelica_metatype _outExpectedTypeLst = NULL((void*)0);
1573 modelica_boolean tmp1_c0 __attribute__((unused)) = 0;
1574 modelica_metatype tmpMeta[4] __attribute__((unused)) = {0};
1575 MMC_SO()mmc_check_stackoverflow(threadData);
1576 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1577 // _outBoolean has no default value.
1578 // _outExpectedTypeLst has no default value.
1579#line 2957 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1580
1581#line 2957 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1582
1583#line 1583 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1584 { /* matchcontinue expression */
1585 volatile modelica_metatype tmp4_1;volatile modelica_metatype tmp4_2;
1586 tmp4_1 = _tp;
1587 tmp4_2 = _dtp;
1588 {
1589 modelica_metatype _falst = NULL((void*)0);
1590 modelica_metatype _falst1 = NULL((void*)0);
1591 modelica_metatype _falst2 = NULL((void*)0);
1592 modelica_metatype _dfalst = NULL((void*)0);
1593 modelica_metatype _tlst = NULL((void*)0);
1594 modelica_metatype _dtlst = NULL((void*)0);
1595 modelica_boolean _ret;
1596 volatile mmc_switch_type tmp4;
1597 int tmp5;
1598 // _falst has no default value.
1599 // _falst1 has no default value.
1600 // _falst2 has no default value.
1601 // _dfalst has no default value.
1602 // _tlst has no default value.
1603 // _dtlst has no default value.
1604 // _ret has no default value.
1605 tmp4 = 0;
1606 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) {
1607 tmp3_top:
1608 threadData->mmc_jumper = &new_mmc_jumper;
1609 for (; tmp4 < 2; tmp4++) {
1610 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
1611 case 0: {
1612 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,11,4)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((4 +1) <<
10) + (((11 +3) & 255) << 2)))
== 0) goto tmp3_end;
1613 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
1614 if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,11,4)((*(mmc_uint_t*)((void*)((char*)(tmp4_2) - 3)))==(((4 +1) <<
10) + (((11 +3) & 255) << 2)))
== 0) goto tmp3_end;
1615 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(2)))))
;
1616
1617 _falst = tmpMeta[2];
1618 _dfalst = tmpMeta[3];
1619 /* Pattern matching succeeded */
1620#line 2966 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1621 _falst1 = omc_List_splitOnBoolList(threadData, _falst, _blst, NULL((void*)0));
1622#line 1622 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1623
1624#line 2967 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1625 _falst2 = listAppend(_falst, _falst1);
1626#line 1626 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1627
1628#line 2969 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1629 _tlst = omc_List_map(threadData, _falst2, boxvar_Types_funcArgType((void*)((char*)(&(boxvar_lit_Types_funcArgType).header) +
3))
);
1630#line 1630 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1631
1632#line 2970 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1633 _dtlst = omc_List_map(threadData, _dfalst, boxvar_Types_funcArgType((void*)((char*)(&(boxvar_lit_Types_funcArgType).header) +
3))
);
1634#line 1634 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1635
1636#line 2971 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1637 _ret = omc_List_isEqualOnTrue(threadData, _tlst, _dtlst, boxvar_Types_equivtypes((void*)((char*)(&(boxvar_lit_Types_equivtypes).header) +
3))
);
1638#line 1638 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1639#line 2972 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1640 tmp1_c0 = _ret;
1641#line 2972 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1642 tmpMeta[0+1] = _tlst;
1643#line 1643 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1644 goto tmp3_done;
1645 }
1646 case 1: {
1647 modelica_boolean tmp6;
1648
1649 /* Pattern matching succeeded */
1650#line 2976 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1651 /* Pattern-matching assignment */
1652#line 2976 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1653 tmp6 = omc_Flags_isSet(threadData, _OMC_LIT20((void*)((char*)(&(_OMC_LIT_STRUCT20).header) + 3)));
1654#line 2976 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1655 if (1 != tmp6) goto goto_2;
1656#line 1656 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1657
1658#line 2977 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1659 omc_Debug_trace(threadData, _OMC_LIT26((void*)((char*)(&(_OMC_LIT_STRUCT26).header) + 3)));
1660#line 1660 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1661#line 2978 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1662 goto goto_2;
1663#line 1663 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1664 goto tmp3_done;
1665 }
1666 }
1667 goto tmp3_end;
1668 tmp3_end: ;
1669 }
1670 goto goto_2;
1671 tmp3_done:
1672 (void)tmp4;
1673 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
1674 goto tmp3_done2;
1675 goto_2:;
1676 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
1677 if (++tmp4 < 2) {
1678 goto tmp3_top;
1679 }
1680 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1681 tmp3_done2:;
1682 }
1683 }
1684 _outBoolean = tmp1_c0;
1685 _outExpectedTypeLst = tmpMeta[0+1];
1686 _return: OMC_LABEL_UNUSED__attribute__((unused))
1687 if (out_outExpectedTypeLst) { *out_outExpectedTypeLst = _outExpectedTypeLst; }
1688 return _outBoolean;
1689}
1690PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_checkDerivativeFunctionInputs(threadData_t *threadData, modelica_metatype _blst, modelica_metatype _tp, modelica_metatype _dtp, modelica_metatype *out_outExpectedTypeLst)
1691{
1692 modelica_boolean _outBoolean;
1693 modelica_metatype out_outBoolean;
1694 _outBoolean = omc_Differentiate_checkDerivativeFunctionInputs(threadData, _blst, _tp, _dtp, out_outExpectedTypeLst);
1695 out_outBoolean = mmc_mk_icon(_outBoolean);
1696 /* skip box _outExpectedTypeLst; list<DAE.Type> */
1697 return out_outBoolean;
1698}
1699
1700PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiateFunction1(threadData_t *threadData, modelica_metatype _inFuncName, modelica_metatype _inMapper, modelica_metatype _inTp, modelica_metatype _expl, modelica_metatype _inDiffArgs, modelica_metatype *out_blst)
1701{
1702 modelica_metatype _outFuncName = NULL((void*)0);
1703 modelica_metatype _blst = NULL((void*)0);
1704 modelica_metatype tmpMeta[7] __attribute__((unused)) = {0};
1705 MMC_SO()mmc_check_stackoverflow(threadData);
1706 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1707 // _outFuncName has no default value.
1708 // _blst has no default value.
1709#line 2901 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1710
1711#line 2901 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1712
1713#line 1713 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1714 { /* matchcontinue expression */
1715 volatile modelica_metatype tmp4_1;volatile modelica_metatype tmp4_2;volatile modelica_metatype tmp4_3;
1716 tmp4_1 = _inMapper;
1717 tmp4_2 = _inTp;
1718 tmp4_3 = _inDiffArgs;
1719 {
1720 modelica_metatype _functions = NULL((void*)0);
1721 modelica_metatype _default = NULL((void*)0);
1722 modelica_metatype _fname = NULL((void*)0);
1723 modelica_metatype _inDFuncName = NULL((void*)0);
1724 modelica_metatype _cr = NULL((void*)0);
1725 modelica_integer _derivativeOrder;
1726 modelica_metatype _funcArg = NULL((void*)0);
1727 modelica_metatype _tplst = NULL((void*)0);
1728 modelica_metatype _bl = NULL((void*)0);
1729 modelica_metatype _lowerOrderDerivatives = NULL((void*)0);
1730 modelica_metatype _mapper = NULL((void*)0);
1731 modelica_metatype _tp = NULL((void*)0);
1732 modelica_metatype _ba = NULL((void*)0);
1733 volatile mmc_switch_type tmp4;
1734 int tmp5;
1735 // _functions has no default value.
1736 // _default has no default value.
1737 // _fname has no default value.
1738 // _inDFuncName has no default value.
1739 // _cr has no default value.
1740 // _derivativeOrder has no default value.
1741 // _funcArg has no default value.
1742 // _tplst has no default value.
1743 // _bl has no default value.
1744 // _lowerOrderDerivatives has no default value.
1745 // _mapper has no default value.
1746 // _tp has no default value.
1747 // _ba has no default value.
1748 tmp4 = 0;
1749 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) {
1750 tmp3_top:
1751 threadData->mmc_jumper = &new_mmc_jumper;
1752 for (; tmp4 < 3; tmp4++) {
1753 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
1754 case 0: {
1755 modelica_integer tmp6;
1756 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,2,6)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((6 +1) <<
10) + (((2 +3) & 255) << 2)))
== 0) goto tmp3_end;
1757 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
1758 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(4)))))
;
1759 tmp6 = mmc_unbox_integer(tmpMeta[3])(((mmc_sint_t) (tmpMeta[3])) >> 1);
1760 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(5)))))
;
1761 if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,11,4)((*(mmc_uint_t*)((void*)((char*)(tmp4_2) - 3)))==(((4 +1) <<
10) + (((11 +3) & 255) << 2)))
== 0) goto tmp3_end;
1762 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(2)))))
;
1763
1764 _inDFuncName = tmpMeta[2];
1765 _derivativeOrder = tmp6 /* pattern as ty=Integer */;
1766 _cr = tmpMeta[4];
1767 _funcArg = tmpMeta[5];
1768 /* Pattern matching succeeded */
1769 /* Check guard condition after assignments */
1770 if (!(((modelica_integer) 1) == _derivativeOrder)) goto tmp3_end;
1771#line 2920 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1772 _tplst = omc_List_map(threadData, _funcArg, boxvar_Types_funcArgType((void*)((char*)(&(boxvar_lit_Types_funcArgType).header) +
3))
);
1773#line 1773 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1774
1775#line 2921 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1776 _ba = omc_Array_mapList(threadData, _tplst, boxvar_Differentiate_diffableTypes((void*)((char*)(&(boxvar_lit_Differentiate_diffableTypes
).header) + 3))
);
1777#line 1777 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1778
1779#line 2922 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1780 _bl = omc_Differentiate_checkDerFunctionConds(threadData, _ba, _cr, _expl, _inDiffArgs);
1781#line 1781 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1782#line 2923 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1783 tmpMeta[0+0] = _inDFuncName;
1784#line 2923 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1785 tmpMeta[0+1] = _bl;
1786#line 1786 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1787 goto tmp3_done;
1788 }
1789 case 1: {
1790 modelica_integer tmp7;
1791 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,2,6)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((6 +1) <<
10) + (((2 +3) & 255) << 2)))
== 0) goto tmp3_end;
1792 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
1793 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(4)))))
;
1794 tmp7 = mmc_unbox_integer(tmpMeta[3])(((mmc_sint_t) (tmpMeta[3])) >> 1);
1795 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(5)))))
;
1796 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_3), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_3) - 3))) +
(4)))))
;
1797 _inDFuncName = tmpMeta[2];
1798 _derivativeOrder = tmp7 /* pattern as ty=Integer */;
1799 _cr = tmpMeta[4];
1800 _tp = tmp4_2;
1801 _functions = tmpMeta[5];
1802 /* Pattern matching succeeded */
1803 /* Check guard condition after assignments */
1804 if (!(!(((modelica_integer) 1) == _derivativeOrder))) goto tmp3_end;
1805#line 2930 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1806 _fname = omc_Differentiate_getlowerOrderDerivative(threadData, _inFuncName, _functions);
1807#line 1807 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1808
1809#line 2932 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1810 _mapper = omc_Differentiate_getFunctionMapper(threadData, _fname, _functions ,&_tp);
1811#line 1811 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1812
1813#line 2934 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1814 omc_Differentiate_differentiateFunction1(threadData, _fname, _mapper, _tp, _expl, _inDiffArgs ,&_blst);
1815#line 1815 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1816
1817#line 2936 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1818 _bl = omc_List_split1OnTrue(threadData, _blst, boxvar_valueEq((void*)((char*)(&(boxvar_lit_valueEq).header) + 3)), mmc_mk_boolean(1)((1) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), NULL((void*)0));
1819#line 1819 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1820
1821#line 2937 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1822 _ba = arrayAppend(arrayCreate(listLength(_blst), mmc_mk_boolean(0)((0) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0)))), listArray(_bl));
1823#line 1823 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1824
1825#line 2938 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1826 _bl = omc_Differentiate_checkDerFunctionConds(threadData, _ba, _cr, _expl, _inDiffArgs);
1827#line 1827 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1828#line 2939 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1829 tmpMeta[0+0] = _inDFuncName;
1830#line 2939 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1831 tmpMeta[0+1] = _bl;
1832#line 1832 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1833 goto tmp3_done;
1834 }
1835 case 2: {
1836 modelica_integer tmp8;
1837 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,2,6)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((6 +1) <<
10) + (((2 +3) & 255) << 2)))
== 0) goto tmp3_end;
1838 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
1839 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(4)))))
;
1840 tmp8 = mmc_unbox_integer(tmpMeta[3])(((mmc_sint_t) (tmpMeta[3])) >> 1);
1841 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 6))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(6)))))
;
1842 if (optionNone(tmpMeta[4])(0==((((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3)))) &
(7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4])
- 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char*)
(tmpMeta[4]) - 3)))) >> 10)) ? 1 : 0)
) goto tmp3_end;
1843 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (1)))))
;
1844 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 7))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(7)))))
;
1845
1846 _fname = tmpMeta[2];
1847 _derivativeOrder = tmp8 /* pattern as ty=Integer */;
1848 _default = tmpMeta[5];
1849 _lowerOrderDerivatives = tmpMeta[6];
1850 _tp = tmp4_2;
1851 /* Pattern matching succeeded */
1852#line 2944 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1853 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
1854#line 2944 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1855 tmpMeta[3] = mmc_mk_box7(5, &DAE_FunctionDefinition_FUNCTION__DER__MAPPER__desc, _fname, _default, mmc_mk_integermmc_mk_icon(_derivativeOrder), tmpMeta[2], mmc_mk_some(_default), _lowerOrderDerivatives);
1856#line 2944 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1857 tmpMeta[0+0] = omc_Differentiate_differentiateFunction1(threadData, _inFuncName, tmpMeta[3], _tp, _expl, _inDiffArgs, &tmpMeta[0+1]);
1858#line 1858 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1859 goto tmp3_done;
1860 }
1861 }
1862 goto tmp3_end;
1863 tmp3_end: ;
1864 }
1865 goto goto_2;
1866 tmp3_done:
1867 (void)tmp4;
1868 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
1869 goto tmp3_done2;
1870 goto_2:;
1871 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
1872 if (++tmp4 < 3) {
1873 goto tmp3_top;
1874 }
1875 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1876 tmp3_done2:;
1877 }
1878 }
1879 _outFuncName = tmpMeta[0+0];
1880 _blst = tmpMeta[0+1];
1881 _return: OMC_LABEL_UNUSED__attribute__((unused))
1882 if (out_blst) { *out_blst = _blst; }
1883 return _outFuncName;
1884}
1885
1886PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiateElementVars(threadData_t *threadData, modelica_metatype _inElements, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_metatype _inElementsDer, modelica_metatype _inElementsNoDer, modelica_metatype _inBooleanLst, modelica_integer _maxIter, modelica_boolean _elementListInputs, modelica_metatype *out_outFunctionTree, modelica_metatype *out_outElementsNoDer, modelica_metatype *out_outBooleanLst)
1887{
1888 modelica_metatype _outElements = NULL((void*)0);
1889 modelica_metatype _outFunctionTree = NULL((void*)0);
1890 modelica_metatype _outElementsNoDer = NULL((void*)0);
1891 modelica_metatype _outBooleanLst = NULL((void*)0);
1892 modelica_metatype tmpMeta[13] __attribute__((unused)) = {0};
1893 MMC_SO()mmc_check_stackoverflow(threadData);
1894 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1895 // _outElements has no default value.
1896 // _outFunctionTree has no default value.
1897 // _outElementsNoDer has no default value.
1898 // _outBooleanLst has no default value.
1899#line 2803 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1900
1901#line 2803 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1902
1903#line 2803 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1904
1905#line 2803 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1906
1907#line 1907 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1908 { /* matchcontinue expression */
1909 volatile modelica_metatype tmp4_1;volatile modelica_metatype tmp4_2;
1910 tmp4_1 = _inElements;
1911 tmp4_2 = _inInputData;
1912 {
1913 modelica_metatype _timevars = NULL((void*)0);
1914 modelica_metatype _rest = NULL((void*)0);
1915 modelica_metatype _vars = NULL((void*)0);
1916 modelica_metatype _elementsNoDer = NULL((void*)0);
1917 modelica_metatype _var = NULL((void*)0);
1918 modelica_metatype _var1 = NULL((void*)0);
1919 modelica_metatype _cref = NULL((void*)0);
1920 modelica_metatype _dcref = NULL((void*)0);
1921 modelica_metatype _crefLst = NULL((void*)0);
1922 modelica_metatype _e = NULL((void*)0);
1923 modelica_metatype _functions = NULL((void*)0);
1924 modelica_metatype _tp = NULL((void*)0);
1925 modelica_metatype _binding = NULL((void*)0);
1926 modelica_metatype _dbinding = NULL((void*)0);
1927 modelica_metatype _blst = NULL((void*)0);
1928 modelica_string _matrixName = NULL((void*)0);
1929 volatile mmc_switch_type tmp4;
1930 int tmp5;
1931 // _timevars has no default value.
1932 // _rest has no default value.
1933 // _vars has no default value.
1934 // _elementsNoDer has no default value.
1935 // _var has no default value.
1936 // _var1 has no default value.
1937 // _cref has no default value.
1938 // _dcref has no default value.
1939 // _crefLst has no default value.
1940 // _e has no default value.
1941 // _functions has no default value.
1942 // _tp has no default value.
1943 // _binding has no default value.
1944 // _dbinding has no default value.
1945 // _blst has no default value.
1946 // _matrixName has no default value.
1947 tmp4 = 0;
1948 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) {
1949 tmp3_top:
1950 threadData->mmc_jumper = &new_mmc_jumper;
1951 for (; tmp4 < 7; tmp4++) {
1952 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
1953 case 0: {
1954 if (!listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1955
1956 tmp4 += 6; /* Pattern matching succeeded; we may skip some cases if we fail */
1957#line 2820 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1958 tmpMeta[0+0] = listReverseInPlace(_inElementsDer);
1959#line 2820 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1960 tmpMeta[0+1] = _inFunctionTree;
1961#line 2820 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1962 tmpMeta[0+2] = listReverseInPlace(_inElementsNoDer);
1963#line 2820 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1964 tmpMeta[0+3] = listReverseInPlace(_inBooleanLst);
1965#line 1965 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1966 goto tmp3_done;
1967 }
1968 case 1: {
1969 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 8))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(8)))))
;
1970 if (optionNone(tmpMeta[4])(0==((((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3)))) &
(7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4])
- 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char*)
(tmpMeta[4]) - 3)))) >> 10)) ? 1 : 0)
) goto tmp3_end;
1971 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (1)))))
;
1972 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1973 tmpMeta[6] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
1974 tmpMeta[7] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
1975 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[6],0,13)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[6]) - 3)))==(((13 +1
) << 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1976 tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[6]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[6]) - 3
))) + (2)))))
;
1977 tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[6]), 7))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[6]) - 3
))) + (7)))))
;
1978 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[9],9,3)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[9]) - 3)))==(((3 +1)
<< 10) + (((9 +3) & 255) << 2)))
== 0) goto tmp3_end;
1979 tmpMeta[10] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[9]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[9]) - 3
))) + (2)))))
;
1980 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[10],3,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[10]) - 3)))==(((1 +1
) << 10) + (((3 +3) & 255) << 2)))
== 0) goto tmp3_end;
1981 tmpMeta[11] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[6]), 8))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[6]) - 3
))) + (8)))))
;
1982 if (optionNone(tmpMeta[11])(0==((((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[11]) - 3))))
& (7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(tmpMeta
[11]) - 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char
*)(tmpMeta[11]) - 3)))) >> 10)) ? 1 : 0)
) goto tmp3_end;
1983 tmpMeta[12] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[11]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[11]) - 3
))) + (1)))))
;
1984
1985 _matrixName = tmpMeta[5];
1986 _var1 = tmpMeta[6];
1987 _cref = tmpMeta[8];
1988 _binding = tmpMeta[12];
1989 _rest = tmpMeta[7];
1990 /* Pattern matching succeeded */
1991#line 2823 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1992 _dcref = omc_Differentiate_createDiffedCrefName(threadData, _cref, _matrixName);
1993#line 1993 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1994
1995#line 2824 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
1996 _var = omc_DAEUtil_replaceCrefInVar(threadData, _dcref, _var1);
1997#line 1997 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
1998
1999#line 2825 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2000 _dbinding = omc_Differentiate_differentiateExp(threadData, _binding, _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree, _maxIter, NULL((void*)0));
2001#line 2001 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2002
2003#line 2826 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2004 _var = omc_DAEUtil_replaceBindungInVar(threadData, _dbinding, _var);
2005#line 2005 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2006
2007#line 2827 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2008 tmpMeta[4] = mmc_mk_cons(_var, _inElementsDer);
2009#line 2827 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2010 _vars = tmpMeta[4];
2011#line 2011 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2012
2013#line 2828 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2014 tmpMeta[4] = mmc_mk_cons(mmc_mk_boolean(1)((1) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), _inBooleanLst);
2015#line 2828 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2016 _blst = tmpMeta[4];
2017#line 2017 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2018#line 2829 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2019 tmpMeta[0+0] = omc_Differentiate_differentiateElementVars(threadData, _rest, _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree, _vars, _inElementsNoDer, _blst, _maxIter, _elementListInputs, &tmpMeta[0+1], &tmpMeta[0+2], &tmpMeta[0+3]);
2020#line 2020 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2021 goto tmp3_done;
2022 }
2023 case 2: {
2024 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 8))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(8)))))
;
2025 if (optionNone(tmpMeta[4])(0==((((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3)))) &
(7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4])
- 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char*)
(tmpMeta[4]) - 3)))) >> 10)) ? 1 : 0)
) goto tmp3_end;
2026 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (1)))))
;
2027 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
2028 tmpMeta[6] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
2029 tmpMeta[7] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2030 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[6],0,13)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[6]) - 3)))==(((13 +1
) << 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
2031 tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[6]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[6]) - 3
))) + (2)))))
;
2032 tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[6]), 7))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[6]) - 3
))) + (7)))))
;
2033 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[9],9,3)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[9]) - 3)))==(((3 +1)
<< 10) + (((9 +3) & 255) << 2)))
== 0) goto tmp3_end;
2034 tmpMeta[10] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[9]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[9]) - 3
))) + (2)))))
;
2035 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[10],3,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[10]) - 3)))==(((1 +1
) << 10) + (((3 +3) & 255) << 2)))
== 0) goto tmp3_end;
2036
2037 _matrixName = tmpMeta[5];
2038 _var1 = tmpMeta[6];
2039 _cref = tmpMeta[8];
2040 _rest = tmpMeta[7];
2041 /* Pattern matching succeeded */
2042#line 2833 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2043 _dcref = omc_Differentiate_createDiffedCrefName(threadData, _cref, _matrixName);
2044#line 2044 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2045
2046#line 2834 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2047 _var = omc_DAEUtil_replaceCrefInVar(threadData, _dcref, _var1);
2048#line 2048 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2049
2050#line 2841 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2051 tmpMeta[4] = mmc_mk_cons(_var, _inElementsDer);
2052#line 2841 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2053 _vars = tmpMeta[4];
2054#line 2054 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2055
2056#line 2842 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2057 tmpMeta[4] = mmc_mk_cons(mmc_mk_boolean(1)((1) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), _inBooleanLst);
2058#line 2842 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2059 _blst = tmpMeta[4];
2060#line 2060 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2061#line 2843 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2062 tmpMeta[0+0] = omc_Differentiate_differentiateElementVars(threadData, _rest, _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree, _vars, _inElementsNoDer, _blst, _maxIter, _elementListInputs, &tmpMeta[0+1], &tmpMeta[0+2], &tmpMeta[0+3]);
2063#line 2063 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2064 goto tmp3_done;
2065 }
2066 case 3: {
2067 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(2)))))
;
2068 if (optionNone(tmpMeta[4])(0==((((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3)))) &
(7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4])
- 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char*)
(tmpMeta[4]) - 3)))) >> 10)) ? 1 : 0)
) goto tmp3_end;
2069 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (1)))))
;
2070 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
2071 tmpMeta[6] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
2072 tmpMeta[7] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2073 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[6],0,13)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[6]) - 3)))==(((13 +1
) << 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
2074 tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[6]), 8))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[6]) - 3
))) + (8)))))
;
2075 if (optionNone(tmpMeta[8])(0==((((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[8]) - 3)))) &
(7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[8])
- 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char*)
(tmpMeta[8]) - 3)))) >> 10)) ? 1 : 0)
) goto tmp3_end;
2076 tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[8]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[8]) - 3
))) + (1)))))
;
2077
2078 _timevars = tmpMeta[5];
2079 _var = tmpMeta[6];
2080 _binding = tmpMeta[9];
2081 _rest = tmpMeta[7];
2082 /* Pattern matching succeeded */
2083#line 2848 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2084 _crefLst = omc_Expression_extractCrefsFromExp(threadData, _binding);
2085#line 2085 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2086
2087#line 2849 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2088 /* Pattern-matching tuple assignment */
2089#line 2849 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2090 tmpMeta[5] = omc_BackendVariable_getVarLst(threadData, _crefLst, _timevars, &tmpMeta[4]);
2091#line 2849 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2092 if (!listEmpty(tmpMeta[5])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[5]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_2;
2093#line 2849 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2094 if (!listEmpty(tmpMeta[4])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto goto_2;
2095#line 2095 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2096
2097#line 2851 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2098 tmpMeta[4] = mmc_mk_cons(_var, _inElementsNoDer);
2099#line 2851 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2100 _vars = tmpMeta[4];
2101#line 2101 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2102
2103#line 2852 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2104 tmpMeta[4] = mmc_mk_cons(mmc_mk_boolean(0)((0) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), _inBooleanLst);
2105#line 2852 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2106 _blst = tmpMeta[4];
2107#line 2107 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2108#line 2853 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2109 tmpMeta[0+0] = omc_Differentiate_differentiateElementVars(threadData, _rest, _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree, _inElementsDer, _vars, _blst, _maxIter, _elementListInputs, &tmpMeta[0+1], &tmpMeta[0+2], &tmpMeta[0+3]);
2110#line 2110 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2111 goto tmp3_done;
2112 }
2113 case 4: {
2114 modelica_boolean tmp6;
2115 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
2116 tmpMeta[4] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
2117 tmpMeta[5] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2118 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[4],0,13)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3)))==(((13 +1
) << 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
2119 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (2)))))
;
2120 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 7))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (7)))))
;
2121 tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 8))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (8)))))
;
2122 if (optionNone(tmpMeta[8])(0==((((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[8]) - 3)))) &
(7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[8])
- 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char*)
(tmpMeta[8]) - 3)))) >> 10)) ? 1 : 0)
) goto tmp3_end;
2123 tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[8]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[8]) - 3
))) + (1)))))
;
2124
2125 _var1 = tmpMeta[4];
2126 _cref = tmpMeta[6];
2127 _tp = tmpMeta[7];
2128 _binding = tmpMeta[9];
2129 _rest = tmpMeta[5];
2130 /* Pattern matching succeeded */
2131#line 2857 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2132 if(_elementListInputs)
2133#line 2857 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2134 {
2135#line 2858 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2136 /* Pattern-matching assignment */
2137#line 2858 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2138 tmp6 = omc_Types_isRealOrSubTypeReal(threadData, _tp);
2139#line 2858 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2140 if (1 != tmp6) goto goto_2;
2141#line 2141 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2142 }
2143
2144#line 2860 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2145 _e = omc_Expression_crefExp(threadData, _cref);
2146#line 2146 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2147
2148#line 2861 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2149 _e = omc_Differentiate_differentiateCrefs(threadData, _e, _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree, _maxIter ,&_functions);
2150#line 2150 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2151
2152#line 2862 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2153 _dcref = omc_Expression_expCref(threadData, _e);
2154#line 2154 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2155
2156#line 2863 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2157 _var = omc_DAEUtil_replaceCrefInVar(threadData, _dcref, _var1);
2158#line 2158 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2159
2160#line 2864 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2161 _dbinding = omc_Differentiate_differentiateExp(threadData, _binding, _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree, _maxIter ,&_functions);
2162#line 2162 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2163
2164#line 2865 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2165 _var = omc_DAEUtil_replaceBindungInVar(threadData, _dbinding, _var);
2166#line 2166 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2167
2168#line 2866 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2169 tmpMeta[4] = mmc_mk_cons(_var, _inElementsDer);
2170#line 2866 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2171 _vars = tmpMeta[4];
2172#line 2172 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2173
2174#line 2867 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2175 tmpMeta[4] = mmc_mk_cons(mmc_mk_boolean(1)((1) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), _inBooleanLst);
2176#line 2867 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2177 _blst = tmpMeta[4];
2178#line 2178 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2179#line 2868 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2180 tmpMeta[0+0] = omc_Differentiate_differentiateElementVars(threadData, _rest, _inDiffwrtCref, _inInputData, _inDiffType, _functions, _vars, _inElementsNoDer, _blst, _maxIter, _elementListInputs, &tmpMeta[0+1], &tmpMeta[0+2], &tmpMeta[0+3]);
2181#line 2181 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2182 goto tmp3_done;
2183 }
2184 case 5: {
2185 modelica_boolean tmp7;
2186 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
2187 tmpMeta[4] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
2188 tmpMeta[5] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2189 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[4],0,13)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3)))==(((13 +1
) << 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
2190 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (2)))))
;
2191 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 7))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (7)))))
;
2192
2193 _var1 = tmpMeta[4];
2194 _cref = tmpMeta[6];
2195 _tp = tmpMeta[7];
2196 _rest = tmpMeta[5];
2197 /* Pattern matching succeeded */
2198#line 2872 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2199 if(_elementListInputs)
2200#line 2872 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2201 {
2202#line 2873 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2203 /* Pattern-matching assignment */
2204#line 2873 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2205 tmp7 = omc_Types_isRealOrSubTypeReal(threadData, _tp);
2206#line 2873 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2207 if (1 != tmp7) goto goto_2;
2208#line 2208 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2209 }
2210
2211#line 2875 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2212 _e = omc_Expression_crefExp(threadData, _cref);
2213#line 2213 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2214
2215#line 2876 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2216 _e = omc_Differentiate_differentiateCrefs(threadData, _e, _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree, _maxIter ,&_functions);
2217#line 2217 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2218
2219#line 2877 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2220 _dcref = omc_Expression_expCref(threadData, _e);
2221#line 2221 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2222
2223#line 2878 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2224 _var = omc_DAEUtil_replaceCrefInVar(threadData, _dcref, _var1);
2225#line 2225 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2226
2227#line 2879 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2228 tmpMeta[4] = mmc_mk_cons(_var, _inElementsDer);
2229#line 2879 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2230 _vars = tmpMeta[4];
2231#line 2231 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2232
2233#line 2880 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2234 tmpMeta[4] = mmc_mk_cons(mmc_mk_boolean(1)((1) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), _inBooleanLst);
2235#line 2880 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2236 _blst = tmpMeta[4];
2237#line 2237 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2238#line 2881 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2239 tmpMeta[0+0] = omc_Differentiate_differentiateElementVars(threadData, _rest, _inDiffwrtCref, _inInputData, _inDiffType, _functions, _vars, _inElementsNoDer, _blst, _maxIter, _elementListInputs, &tmpMeta[0+1], &tmpMeta[0+2], &tmpMeta[0+3]);
2240#line 2240 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2241 goto tmp3_done;
2242 }
2243 case 6: {
2244 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
2245 tmpMeta[4] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
2246 tmpMeta[5] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2247 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[4],0,13)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3)))==(((13 +1
) << 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
2248
2249 _var = tmpMeta[4];
2250 _rest = tmpMeta[5];
2251 /* Pattern matching succeeded */
2252#line 2885 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2253 tmpMeta[4] = mmc_mk_cons(_var, _inElementsNoDer);
2254#line 2885 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2255 _elementsNoDer = tmpMeta[4];
2256#line 2256 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2257
2258#line 2886 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2259 tmpMeta[4] = mmc_mk_cons(mmc_mk_boolean(0)((0) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), _inBooleanLst);
2260#line 2886 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2261 _blst = tmpMeta[4];
2262#line 2262 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2263#line 2887 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2264 tmpMeta[0+0] = omc_Differentiate_differentiateElementVars(threadData, _rest, _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree, _inElementsDer, _elementsNoDer, _blst, _maxIter, _elementListInputs, &tmpMeta[0+1], &tmpMeta[0+2], &tmpMeta[0+3]);
2265#line 2265 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2266 goto tmp3_done;
2267 }
2268 }
2269 goto tmp3_end;
2270 tmp3_end: ;
2271 }
2272 goto goto_2;
2273 tmp3_done:
2274 (void)tmp4;
2275 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
2276 goto tmp3_done2;
2277 goto_2:;
2278 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
2279 if (++tmp4 < 7) {
2280 goto tmp3_top;
2281 }
2282 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2283 tmp3_done2:;
2284 }
2285 }
2286 _outElements = tmpMeta[0+0];
2287 _outFunctionTree = tmpMeta[0+1];
2288 _outElementsNoDer = tmpMeta[0+2];
2289 _outBooleanLst = tmpMeta[0+3];
2290 _return: OMC_LABEL_UNUSED__attribute__((unused))
2291 if (out_outFunctionTree) { *out_outFunctionTree = _outFunctionTree; }
2292 if (out_outElementsNoDer) { *out_outElementsNoDer = _outElementsNoDer; }
2293 if (out_outBooleanLst) { *out_outBooleanLst = _outBooleanLst; }
2294 return _outElements;
2295}
2296PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_differentiateElementVars(threadData_t *threadData, modelica_metatype _inElements, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_metatype _inElementsDer, modelica_metatype _inElementsNoDer, modelica_metatype _inBooleanLst, modelica_metatype _maxIter, modelica_metatype _elementListInputs, modelica_metatype *out_outFunctionTree, modelica_metatype *out_outElementsNoDer, modelica_metatype *out_outBooleanLst)
2297{
2298 modelica_integer tmp1;
2299 modelica_integer tmp2;
2300 modelica_metatype _outElements = NULL((void*)0);
2301 tmp1 = mmc_unbox_integer(_maxIter)(((mmc_sint_t) (_maxIter)) >> 1);
2302 tmp2 = mmc_unbox_integer(_elementListInputs)(((mmc_sint_t) (_elementListInputs)) >> 1);
2303 _outElements = omc_Differentiate_differentiateElementVars(threadData, _inElements, _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree, _inElementsDer, _inElementsNoDer, _inBooleanLst, tmp1, tmp2, out_outFunctionTree, out_outElementsNoDer, out_outBooleanLst);
2304 /* skip box _outElements; list<DAE.Element> */
2305 /* skip box _outFunctionTree; DAE.AvlTreePathFunction.Tree */
2306 /* skip box _outElementsNoDer; list<DAE.Element> */
2307 /* skip box _outBooleanLst; list<#Boolean> */
2308 return _outElements;
2309}
2310
2311PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_getFunctionInOutVars(threadData_t *threadData, modelica_metatype _inFunction, modelica_metatype _inFunctionTree, modelica_metatype _inDiffwrtCref, modelica_integer _maxIter, modelica_metatype *out_inputVarsDer, modelica_metatype *out_inputVarsNoDer, modelica_metatype *out_outputVarsDer, modelica_metatype *out_outputVarsNoDer, modelica_metatype *out_blst)
2312{
2313 modelica_metatype _functions = NULL((void*)0);
2314 modelica_metatype _inputVarsDer = NULL((void*)0);
2315 modelica_metatype _inputVarsNoDer = NULL((void*)0);
2316 modelica_metatype _outputVarsDer = NULL((void*)0);
2317 modelica_metatype _outputVarsNoDer = NULL((void*)0);
2318 modelica_metatype _blst = NULL((void*)0);
2319 modelica_metatype _inputVars = NULL((void*)0);
2320 modelica_metatype _outputVars = NULL((void*)0);
2321 modelica_metatype _diffData = NULL((void*)0);
2322 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
2323 MMC_SO()mmc_check_stackoverflow(threadData);
2324 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2325 _functions = _inFunctionTree;
2326 // _inputVarsDer has no default value.
2327 // _inputVarsNoDer has no default value.
2328 // _outputVarsDer has no default value.
2329 // _outputVarsNoDer has no default value.
2330 // _blst has no default value.
2331 // _inputVars has no default value.
2332 // _outputVars has no default value.
2333 // _diffData has no default value.
2334#line 2778 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2335 _inputVars = omc_DAEUtil_getFunctionInputVars(threadData, _inFunction);
2336#line 2336 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2337
2338#line 2779 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2339 _outputVars = omc_DAEUtil_getFunctionOutputVars(threadData, _inFunction);
2340#line 2340 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2341
2342#line 2780 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2343 _diffData = _OMC_LIT28((void*)((char*)(&(_OMC_LIT_STRUCT28).header) + 3));
2344#line 2344 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2345
2346#line 2781 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2347 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(10))((void*)((char*)(mmc_alloc_words(10)) + 3));
2348#line 2781 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2349 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_diffData)((void*)((char*)(_diffData) - 3)), 10*sizeof(modelica_metatype));
2350#line 2781 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2351 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[8] = mmc_mk_some(omc_BackendUtil_modelicaStringToCStr(threadData, omc_AbsynUtil_pathString(threadData, omc_DAEUtil_functionName(threadData, _inFunction), _OMC_LIT23((void*)((char*)(&(_OMC_LIT_STRUCT23).header) + 3)), 1, 0), 0));
2352#line 2781 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2353 _diffData = tmpMeta[0];
2354#line 2354 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2355
2356#line 2783 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2357 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2358#line 2783 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2359 tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2360#line 2783 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2361 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2362#line 2783 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2363 _inputVarsDer = omc_Differentiate_differentiateElementVars(threadData, _inputVars, _inDiffwrtCref, _diffData, _OMC_LIT29((void*)((char*)(&(_OMC_LIT_STRUCT29).header) + 3)), _functions, tmpMeta[0], tmpMeta[1], tmpMeta[2], _maxIter, 1 ,&_functions ,&_inputVarsNoDer ,&_blst);
2364#line 2364 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2365
2366#line 2784 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2367 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2368#line 2784 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2369 tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2370#line 2784 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2371 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2372#line 2784 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2373 _outputVarsDer = omc_Differentiate_differentiateElementVars(threadData, _outputVars, _inDiffwrtCref, _diffData, _OMC_LIT29((void*)((char*)(&(_OMC_LIT_STRUCT29).header) + 3)), _functions, tmpMeta[0], tmpMeta[1], tmpMeta[2], _maxIter, 0 ,&_functions ,&_outputVarsNoDer ,NULL((void*)0));
2374#line 2374 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2375 _return: OMC_LABEL_UNUSED__attribute__((unused))
2376 if (out_inputVarsDer) { *out_inputVarsDer = _inputVarsDer; }
2377 if (out_inputVarsNoDer) { *out_inputVarsNoDer = _inputVarsNoDer; }
2378 if (out_outputVarsDer) { *out_outputVarsDer = _outputVarsDer; }
2379 if (out_outputVarsNoDer) { *out_outputVarsNoDer = _outputVarsNoDer; }
2380 if (out_blst) { *out_blst = _blst; }
2381 return _functions;
2382}
2383PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_getFunctionInOutVars(threadData_t *threadData, modelica_metatype _inFunction, modelica_metatype _inFunctionTree, modelica_metatype _inDiffwrtCref, modelica_metatype _maxIter, modelica_metatype *out_inputVarsDer, modelica_metatype *out_inputVarsNoDer, modelica_metatype *out_outputVarsDer, modelica_metatype *out_outputVarsNoDer, modelica_metatype *out_blst)
2384{
2385 modelica_integer tmp1;
2386 modelica_metatype _functions = NULL((void*)0);
2387 tmp1 = mmc_unbox_integer(_maxIter)(((mmc_sint_t) (_maxIter)) >> 1);
2388 _functions = omc_Differentiate_getFunctionInOutVars(threadData, _inFunction, _inFunctionTree, _inDiffwrtCref, tmp1, out_inputVarsDer, out_inputVarsNoDer, out_outputVarsDer, out_outputVarsNoDer, out_blst);
2389 /* skip box _functions; DAE.AvlTreePathFunction.Tree */
2390 /* skip box _inputVarsDer; list<DAE.Element> */
2391 /* skip box _inputVarsNoDer; list<DAE.Element> */
2392 /* skip box _outputVarsDer; list<DAE.Element> */
2393 /* skip box _outputVarsNoDer; list<DAE.Element> */
2394 /* skip box _blst; list<#Boolean> */
2395 return _functions;
2396}
2397
2398PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_getDiffedTypeandName(threadData_t *threadData, modelica_metatype _inFunction, modelica_metatype _inputVarsDer, modelica_metatype _outputVarsDer, modelica_metatype _blst, modelica_metatype *out_diffedType)
2399{
2400 modelica_metatype _diffedName = NULL((void*)0);
2401 modelica_metatype _diffedType = NULL((void*)0);
2402 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
2403 MMC_SO()mmc_check_stackoverflow(threadData);
2404 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2405 // _diffedName has no default value.
2406 // _diffedType has no default value.
2407#line 2759 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2408 _diffedType = omc_Types_extendsFunctionTypeArgs(threadData, omc_DAEUtil_getFunctionType(threadData, _inFunction), _inputVarsDer, _outputVarsDer, _blst);
2409#line 2409 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2410
2411#line 2760 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2412 tmpMeta[0] = stringAppend(_OMC_LIT30((void*)((char*)(&(_OMC_LIT_STRUCT30).header) + 3)),omc_BackendUtil_modelicaStringToCStr(threadData, omc_AbsynUtil_pathString(threadData, omc_DAEUtil_functionName(threadData, _inFunction), _OMC_LIT23((void*)((char*)(&(_OMC_LIT_STRUCT23).header) + 3)), 1, 0), 0));
2413#line 2760 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2414 _diffedName = omc_AbsynUtil_stringPath(threadData, tmpMeta[0]);
2415#line 2415 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2416 _return: OMC_LABEL_UNUSED__attribute__((unused))
2417 if (out_diffedType) { *out_diffedType = _diffedType; }
2418 return _diffedName;
2419}
2420
2421PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiatePartialFunction(threadData_t *threadData, modelica_metatype _inFunction, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_integer _maxIter, modelica_metatype *out_outFunctionTree, modelica_metatype *out_outBooleanlst)
2422{
2423 modelica_metatype _outDerFunction = NULL((void*)0);
2424 modelica_metatype _outFunctionTree = NULL((void*)0);
2425 modelica_metatype _outBooleanlst = NULL((void*)0);
2426 modelica_metatype tmpMeta[6] __attribute__((unused)) = {0};
2427 MMC_SO()mmc_check_stackoverflow(threadData);
2428 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2429 // _outDerFunction has no default value.
2430 // _outFunctionTree has no default value.
2431 // _outBooleanlst has no default value.
2432#line 2650 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2433
2434#line 2650 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2435
2436#line 2650 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2437
2438#line 2438 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2439 { /* matchcontinue expression */
2440 volatile modelica_metatype tmp4_1;
2441 tmp4_1 = _inFunction;
2442 {
2443 modelica_metatype _inputData = NULL((void*)0);
2444 modelica_metatype _diffFuncData = NULL((void*)0);
2445 modelica_metatype _path = NULL((void*)0);
2446 modelica_metatype _dpath = NULL((void*)0);
2447 modelica_boolean _isImpure;
2448 modelica_metatype _dinl = NULL((void*)0);
2449 modelica_metatype _functions = NULL((void*)0);
2450 modelica_metatype _dtp = NULL((void*)0);
2451 modelica_string _str = NULL((void*)0);
2452 modelica_metatype _funcbodyDer = NULL((void*)0);
2453 modelica_metatype _inputVars = NULL((void*)0);
2454 modelica_metatype _inputVarsNoDer = NULL((void*)0);
2455 modelica_metatype _inputVarsDer = NULL((void*)0);
2456 modelica_metatype _outputVars = NULL((void*)0);
2457 modelica_metatype _outputVarsNoDer = NULL((void*)0);
2458 modelica_metatype _outputVarsDer = NULL((void*)0);
2459 modelica_metatype _protectedVars = NULL((void*)0);
2460 modelica_metatype _protectedVarsNoDer = NULL((void*)0);
2461 modelica_metatype _protectedVarsDer = NULL((void*)0);
2462 modelica_metatype _newProtectedVars = NULL((void*)0);
2463 modelica_metatype _bodyStmts = NULL((void*)0);
2464 modelica_metatype _derbodyStmts = NULL((void*)0);
2465 modelica_metatype _func = NULL((void*)0);
2466 modelica_metatype _dfunc = NULL((void*)0);
2467 modelica_string _funcname = NULL((void*)0);
2468 modelica_string _funstring = NULL((void*)0);
2469 modelica_metatype _blst = NULL((void*)0);
2470 modelica_metatype _visibility = NULL((void*)0);
2471 volatile mmc_switch_type tmp4;
2472 int tmp5;
2473 // _inputData has no default value.
2474 // _diffFuncData has no default value.
2475 // _path has no default value.
2476 // _dpath has no default value.
2477 // _isImpure has no default value.
2478 // _dinl has no default value.
2479 // _functions has no default value.
2480 // _dtp has no default value.
2481 // _str has no default value.
2482 // _funcbodyDer has no default value.
2483 // _inputVars has no default value.
2484 // _inputVarsNoDer has no default value.
2485 // _inputVarsDer has no default value.
2486 // _outputVars has no default value.
2487 // _outputVarsNoDer has no default value.
2488 // _outputVarsDer has no default value.
2489 // _protectedVars has no default value.
2490 // _protectedVarsNoDer has no default value.
2491 // _protectedVarsDer has no default value.
2492 // _newProtectedVars has no default value.
2493 // _bodyStmts has no default value.
2494 // _derbodyStmts has no default value.
2495 // _func has no default value.
2496 // _dfunc has no default value.
2497 // _funcname has no default value.
2498 // _funstring has no default value.
2499 // _blst has no default value.
2500 // _visibility has no default value.
2501 tmp4 = 0;
2502 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) {
2503 tmp3_top:
2504 threadData->mmc_jumper = &new_mmc_jumper;
2505 for (; tmp4 < 2; tmp4++) {
2506 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
2507 case 0: {
2508
2509 _func = tmp4_1;
2510 /* Pattern matching succeeded */
2511#line 2679 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2512 if(omc_Flags_isSet(threadData, _OMC_LIT36((void*)((char*)(&(_OMC_LIT_STRUCT36).header) + 3))))
2513#line 2679 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2514 {
2515#line 2680 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2516 _funstring = omc_Tpl_tplString(threadData, boxvar_DAEDumpTpl_dumpFunction((void*)((char*)(&(boxvar_lit_DAEDumpTpl_dumpFunction).header
) + 3))
, _func);
2517#line 2517 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2518
2519#line 2681 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2520 tmpMeta[3] = stringAppend(_OMC_LIT31((void*)((char*)(&(_OMC_LIT_STRUCT31).header) + 3)),_funstring);
2521#line 2681 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2522 tmpMeta[4] = stringAppend(tmpMeta[3],_OMC_LIT32((void*)((char*)(&(_OMC_LIT_STRUCT32).header) + 3)));
2523#line 2681 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2524 fputs(MMC_STRINGDATA(tmpMeta[4])(((struct mmc_string*)((void*)((char*)(tmpMeta[4]) - 3)))->
data)
,stdoutstdout);
2525#line 2525 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2526 }
2527
2528#line 2684 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2529 _inputVars = omc_DAEUtil_getFunctionInputVars(threadData, _func);
2530#line 2530 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2531
2532#line 2685 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2533 _outputVars = omc_DAEUtil_getFunctionOutputVars(threadData, _func);
2534#line 2534 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2535
2536#line 2686 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2537 _protectedVars = omc_DAEUtil_getFunctionProtectedVars(threadData, _func);
2538#line 2538 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2539
2540#line 2687 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2541 _bodyStmts = omc_DAEUtil_getFunctionAlgorithmStmts(threadData, _func);
2542#line 2542 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2543
2544#line 2688 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2545 _visibility = omc_DAEUtil_getFunctionVisibility(threadData, _func);
2546#line 2546 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2547
2548#line 2690 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2549 _functions = omc_Differentiate_getFunctionInOutVars(threadData, _func, _inFunctionTree, _inDiffwrtCref, _maxIter ,&_inputVarsDer ,&_inputVarsNoDer ,&_outputVarsDer ,&_outputVarsNoDer ,&_blst);
2550#line 2550 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2551
2552#line 2693 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2553 _path = omc_DAEUtil_functionName(threadData, _func);
2554#line 2554 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2555
2556#line 2694 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2557 _funcname = omc_BackendUtil_modelicaStringToCStr(threadData, omc_AbsynUtil_pathString(threadData, _path, _OMC_LIT23((void*)((char*)(&(_OMC_LIT_STRUCT23).header) + 3)), 1, 0), 0);
2558#line 2558 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2559
2560#line 2695 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2561 _diffFuncData = _OMC_LIT28((void*)((char*)(&(_OMC_LIT_STRUCT28).header) + 3));
2562#line 2562 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2563
2564#line 2696 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2565 tmpMeta[3] = MMC_TAGPTR(mmc_alloc_words(10))((void*)((char*)(mmc_alloc_words(10)) + 3));
2566#line 2696 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2567 memcpy(MMC_UNTAGPTR(tmpMeta[3])((void*)((char*)(tmpMeta[3]) - 3)), MMC_UNTAGPTR(_diffFuncData)((void*)((char*)(_diffFuncData) - 3)), 10*sizeof(modelica_metatype));
2568#line 2696 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2569 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[3])((void*)((char*)(tmpMeta[3]) - 3)))[8] = mmc_mk_some(_funcname);
2570#line 2696 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2571 _diffFuncData = tmpMeta[3];
2572#line 2572 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2573
2574#line 2697 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2575 tmpMeta[3] = MMC_TAGPTR(mmc_alloc_words(10))((void*)((char*)(mmc_alloc_words(10)) + 3));
2576#line 2697 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2577 memcpy(MMC_UNTAGPTR(tmpMeta[3])((void*)((char*)(tmpMeta[3]) - 3)), MMC_UNTAGPTR(_diffFuncData)((void*)((char*)(_diffFuncData) - 3)), 10*sizeof(modelica_metatype));
2578#line 2697 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2579 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[3])((void*)((char*)(tmpMeta[3]) - 3)))[9] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_inInputData), 9))(*(void**)(((void*)((void**)(((void*)((char*)(_inInputData) -
3))) + (9)))))
);
2580#line 2697 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2581 _diffFuncData = tmpMeta[3];
2582#line 2582 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2583
2584#line 2700 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2585 _inputData = omc_Differentiate_addElementVars2Dep(threadData, _inputVarsNoDer, _functions, _diffFuncData, NULL((void*)0));
2586#line 2586 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2587
2588#line 2701 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2589 _inputData = omc_Differentiate_addElementVars2Dep(threadData, _outputVarsNoDer, _functions, _inputData, NULL((void*)0));
2590#line 2590 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2591
2592#line 2703 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2593 tmpMeta[3] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2594#line 2703 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2595 tmpMeta[4] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2596#line 2703 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2597 tmpMeta[5] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2598#line 2703 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2599 _protectedVarsDer = omc_Differentiate_differentiateElementVars(threadData, _protectedVars, _inDiffwrtCref, _inputData, _OMC_LIT29((void*)((char*)(&(_OMC_LIT_STRUCT29).header) + 3)), _functions, tmpMeta[3], tmpMeta[4], tmpMeta[5], _maxIter, 0 ,&_functions ,&_protectedVarsNoDer ,NULL((void*)0));
2600#line 2600 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2601
2602#line 2706 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2603 _inputData = omc_Differentiate_addElementVars2Dep(threadData, _protectedVarsNoDer, _functions, _inputData, NULL((void*)0));
2604#line 2604 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2605
2606#line 2708 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2607 if(omc_Flags_isSet(threadData, _OMC_LIT36((void*)((char*)(&(_OMC_LIT_STRUCT36).header) + 3))))
2608#line 2708 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2609 {
2610#line 2709 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2611 omc_Differentiate_dumpInputData(threadData, _inputData);
2612#line 2612 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2613 }
2614
2615#line 2715 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2616 tmpMeta[3] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2617#line 2715 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2618 _derbodyStmts = omc_Differentiate_differentiateStatements(threadData, listReverse(_bodyStmts), _inDiffwrtCref, _inputData, _OMC_LIT29((void*)((char*)(&(_OMC_LIT_STRUCT29).header) + 3)), tmpMeta[3], _functions, _maxIter ,&_functions);
2619#line 2619 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2620
2621#line 2717 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2622 if(omc_Flags_isSet(threadData, _OMC_LIT36((void*)((char*)(&(_OMC_LIT_STRUCT36).header) + 3))))
2623#line 2717 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2624 {
2625#line 2718 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2626 _funstring = omc_DAEDump_ppStmtListStr(threadData, _derbodyStmts, ((modelica_integer) 0));
2627#line 2627 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2628
2629#line 2719 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2630 tmpMeta[3] = stringAppend(_OMC_LIT37((void*)((char*)(&(_OMC_LIT_STRUCT37).header) + 3)),_funstring);
2631#line 2719 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2632 tmpMeta[4] = stringAppend(tmpMeta[3],_OMC_LIT32((void*)((char*)(&(_OMC_LIT_STRUCT32).header) + 3)));
2633#line 2719 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2634 fputs(MMC_STRINGDATA(tmpMeta[4])(((struct mmc_string*)((void*)((char*)(tmpMeta[4]) - 3)))->
data)
,stdoutstdout);
2635#line 2635 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2636 }
2637
2638#line 2723 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2639 _dpath = omc_Differentiate_getDiffedTypeandName(threadData, _func, _inputVarsDer, _outputVarsDer, _blst ,&_dtp);
2640#line 2640 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2641
2642#line 2726 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2643 _newProtectedVars = omc_List_map1(threadData, _outputVars, boxvar_DAEUtil_setElementVarVisibility((void*)((char*)(&(boxvar_lit_DAEUtil_setElementVarVisibility
).header) + 3))
, _OMC_LIT38((void*)((char*)(&(_OMC_LIT_STRUCT38).header) + 3)));
2644#line 2644 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2645
2646#line 2727 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2647 _newProtectedVars = omc_List_map1(threadData, _newProtectedVars, boxvar_DAEUtil_setElementVarDirection((void*)((char*)(&(boxvar_lit_DAEUtil_setElementVarDirection
).header) + 3))
, _OMC_LIT39((void*)((char*)(&(_OMC_LIT_STRUCT39).header) + 3)));
2648#line 2648 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2649
2650#line 2729 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2651 tmpMeta[4] = mmc_mk_box2(3, &DAE_Algorithm_ALGORITHM__STMTS__desc, _derbodyStmts);
2652#line 2729 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2653 tmpMeta[5] = mmc_mk_box3(18, &DAE_Element_ALGORITHM__desc, tmpMeta[4], _OMC_LIT44((void*)((char*)(&(_OMC_LIT_STRUCT44).header) + 3)));
2654#line 2729 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2655 tmpMeta[3] = mmc_mk_cons(tmpMeta[5], MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3)));
2656#line 2729 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2657 _funcbodyDer = listAppend(_newProtectedVars, tmpMeta[3]);
2658#line 2658 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2659
2660#line 2730 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2661 _funcbodyDer = listAppend(_protectedVarsDer, _funcbodyDer);
2662#line 2662 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2663
2664#line 2731 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2665 _funcbodyDer = listAppend(_protectedVars, _funcbodyDer);
2666#line 2666 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2667
2668#line 2732 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2669 _funcbodyDer = listAppend(_outputVarsDer, _funcbodyDer);
2670#line 2670 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2671
2672#line 2733 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2673 _funcbodyDer = listAppend(_inputVarsDer, _funcbodyDer);
2674#line 2674 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2675
2676#line 2734 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2677 _funcbodyDer = listAppend(_inputVars, _funcbodyDer);
2678#line 2678 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2679
2680#line 2736 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2681 _isImpure = omc_DAEUtil_getFunctionImpureAttribute(threadData, _func);
2682#line 2682 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2683
2684#line 2737 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2685 _dinl = omc_DAEUtil_getFunctionInlineType(threadData, _func);
2686#line 2686 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2687
2688#line 2738 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2689 tmpMeta[4] = mmc_mk_box2(3, &DAE_FunctionDefinition_FUNCTION__DEF__desc, _funcbodyDer);
2690#line 2738 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2691 tmpMeta[3] = mmc_mk_cons(tmpMeta[4], MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3)));
2692#line 2738 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2693 tmpMeta[5] = mmc_mk_box10(3, &DAE_Function_FUNCTION__desc, _dpath, tmpMeta[3], _dtp, _visibility, mmc_mk_boolean(0)((0) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), mmc_mk_boolean(_isImpure)((_isImpure) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), _dinl, _OMC_LIT44((void*)((char*)(&(_OMC_LIT_STRUCT44).header) + 3)), mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)));
2694#line 2738 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2695 _dfunc = tmpMeta[5];
2696#line 2696 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2697#line 2739 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2698 tmpMeta[0+0] = _dfunc;
2699#line 2739 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2700 tmpMeta[0+1] = _functions;
2701#line 2739 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2702 tmpMeta[0+2] = _blst;
2703#line 2703 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2704 goto tmp3_done;
2705 }
2706 case 1: {
2707 modelica_boolean tmp6;
2708
2709 /* Pattern matching succeeded */
2710#line 2743 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2711 /* Pattern-matching assignment */
2712#line 2743 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2713 tmp6 = omc_Flags_isSet(threadData, _OMC_LIT20((void*)((char*)(&(_OMC_LIT_STRUCT20).header) + 3)));
2714#line 2743 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2715 if (1 != tmp6) goto goto_2;
2716#line 2716 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2717
2718#line 2744 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2719 _path = omc_DAEUtil_functionName(threadData, _inFunction);
2720#line 2720 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2721
2722#line 2745 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2723 tmpMeta[3] = stringAppend(_OMC_LIT45((void*)((char*)(&(_OMC_LIT_STRUCT45).header) + 3)),omc_AbsynUtil_pathString(threadData, _path, _OMC_LIT23((void*)((char*)(&(_OMC_LIT_STRUCT23).header) + 3)), 1, 0));
2724#line 2745 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2725 tmpMeta[4] = stringAppend(tmpMeta[3],_OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)));
2726#line 2745 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2727 _str = tmpMeta[4];
2728#line 2728 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2729
2730#line 2746 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2731 omc_Debug_trace(threadData, _str);
2732#line 2732 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2733#line 2747 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2734 goto goto_2;
2735#line 2735 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2736 goto tmp3_done;
2737 }
2738 }
2739 goto tmp3_end;
2740 tmp3_end: ;
2741 }
2742 goto goto_2;
2743 tmp3_done:
2744 (void)tmp4;
2745 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
2746 goto tmp3_done2;
2747 goto_2:;
2748 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
2749 if (++tmp4 < 2) {
2750 goto tmp3_top;
2751 }
2752 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2753 tmp3_done2:;
2754 }
2755 }
2756 _outDerFunction = tmpMeta[0+0];
2757 _outFunctionTree = tmpMeta[0+1];
2758 _outBooleanlst = tmpMeta[0+2];
2759 _return: OMC_LABEL_UNUSED__attribute__((unused))
2760 if (out_outFunctionTree) { *out_outFunctionTree = _outFunctionTree; }
2761 if (out_outBooleanlst) { *out_outBooleanlst = _outBooleanlst; }
2762 return _outDerFunction;
2763}
2764PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_differentiatePartialFunction(threadData_t *threadData, modelica_metatype _inFunction, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_metatype _maxIter, modelica_metatype *out_outFunctionTree, modelica_metatype *out_outBooleanlst)
2765{
2766 modelica_integer tmp1;
2767 modelica_metatype _outDerFunction = NULL((void*)0);
2768 tmp1 = mmc_unbox_integer(_maxIter)(((mmc_sint_t) (_maxIter)) >> 1);
2769 _outDerFunction = omc_Differentiate_differentiatePartialFunction(threadData, _inFunction, _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree, tmp1, out_outFunctionTree, out_outBooleanlst);
2770 /* skip box _outDerFunction; DAE.Function */
2771 /* skip box _outFunctionTree; DAE.AvlTreePathFunction.Tree */
2772 /* skip box _outBooleanlst; list<#Boolean> */
2773 return _outDerFunction;
2774}
2775
2776PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_prepareArgumentsExplArray(threadData_t *threadData, modelica_metatype _inWorkLst, modelica_metatype _inArgs, modelica_integer _inCurrentArg, modelica_metatype _inAccum)
2777{
2778 modelica_metatype _outExpLstLst = NULL((void*)0);
2779 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
2780 MMC_SO()mmc_check_stackoverflow(threadData);
2781 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2782 // _outExpLstLst has no default value.
2783#line 2783 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2784 { /* match expression */
2785 modelica_metatype tmp3_1;
2786 tmp3_1 = _inWorkLst;
2787 {
2788 modelica_metatype _rest = NULL((void*)0);
2789 modelica_metatype _args = NULL((void*)0);
2790 modelica_metatype _e = NULL((void*)0);
2791 modelica_metatype _eone = NULL((void*)0);
2792 modelica_metatype _tp = NULL((void*)0);
2793 modelica_metatype _dims = NULL((void*)0);
2794 volatile mmc_switch_type tmp3;
2795 int tmp4;
2796 // _rest has no default value.
2797 // _args has no default value.
2798 // _e has no default value.
2799 // _eone has no default value.
2800 // _tp has no default value.
2801 // _dims has no default value.
2802 tmp3 = 0;
2803 for (; tmp3 < 2; tmp3++) {
2804 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
2805 case 0: {
2806 if (!listEmpty(tmp3_1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp2_end;
2807 /* Pattern matching succeeded */
2808#line 2628 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2809 tmpMeta[0] = listReverse(_inAccum);
2810#line 2810 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2811 goto tmp2_done;
2812 }
2813 case 1: {
2814 if (listEmpty(tmp3_1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp2_end;
2815 tmpMeta[1] = MMC_CAR(tmp3_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(1)))))
;
2816 tmpMeta[2] = MMC_CDR(tmp3_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
2817 _e = tmpMeta[1];
2818 _rest = tmpMeta[2];
2819 /* Pattern matching succeeded */
2820#line 2631 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2821 _tp = omc_Expression_typeof(threadData, _e);
2822#line 2822 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2823
2824#line 2632 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2825 _dims = omc_Expression_arrayDimension(threadData, _tp);
2826#line 2826 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2827
2828#line 2633 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2829 _eone = omc_Expression_makeOneExpression(threadData, _dims, NULL((void*)0));
2830#line 2830 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2831
2832#line 2634 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2833 _args = omc_List_set(threadData, _inArgs, _inCurrentArg, _eone);
2834#line 2834 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2835#line 2635 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2836 tmpMeta[1] = mmc_mk_cons(_args, _inAccum);
2837#line 2635 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2838 /* Tail recursive call */
2839#line 2635 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2840 _inWorkLst = _rest;
2841#line 2635 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2842 _inCurrentArg = ((modelica_integer) 1) + _inCurrentArg;
2843#line 2635 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2844 _inAccum = tmpMeta[1];
2845#line 2635 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2846 goto _tailrecursive;
2847#line 2635 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2848 /* TODO: Make sure any eventual dead code below is never generated */
2849#line 2849 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2850 goto tmp2_done;
2851 }
2852 }
2853 goto tmp2_end;
2854 tmp2_end: ;
2855 }
2856 goto goto_1;
2857 goto_1:;
2858 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2859 goto tmp2_done;
2860 tmp2_done:;
2861 }
2862 }
2863 _outExpLstLst = tmpMeta[0];
2864 _return: OMC_LABEL_UNUSED__attribute__((unused))
2865 return _outExpLstLst;
2866}
2867PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_prepareArgumentsExplArray(threadData_t *threadData, modelica_metatype _inWorkLst, modelica_metatype _inArgs, modelica_metatype _inCurrentArg, modelica_metatype _inAccum)
2868{
2869 modelica_integer tmp1;
2870 modelica_metatype _outExpLstLst = NULL((void*)0);
2871 tmp1 = mmc_unbox_integer(_inCurrentArg)(((mmc_sint_t) (_inCurrentArg)) >> 1);
2872 _outExpLstLst = omc_Differentiate_prepareArgumentsExplArray(threadData, _inWorkLst, _inArgs, tmp1, _inAccum);
2873 /* skip box _outExpLstLst; list<list<DAE.Exp>> */
2874 return _outExpLstLst;
2875}
2876
2877PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_createPartialSum(threadData_t *threadData, modelica_metatype _inArgsLst, modelica_metatype _inDiff, modelica_metatype _inCall, modelica_metatype _inAccum)
2878{
2879 modelica_metatype _outExp = NULL((void*)0);
2880 modelica_metatype _restDiff = NULL((void*)0);
2881 modelica_metatype _de = NULL((void*)0);
2882 modelica_metatype _res = NULL((void*)0);
2883 modelica_metatype tmpMeta[8] __attribute__((unused)) = {0};
2884 MMC_SO()mmc_check_stackoverflow(threadData);
2885 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2886 _outExp = _inAccum;
2887 _restDiff = _inDiff;
2888 // _de has no default value.
2889 // _res has no default value.
2890#line 2581 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2891 {
2892#line 2581 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2893 modelica_metatype _expLst;
2894#line 2581 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2895 for (tmpMeta[0] = _inArgsLst; !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)))))
)
2896#line 2581 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2897 {
2898#line 2581 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2899 _expLst = MMC_CAR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (1)))))
;
2900#line 2582 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2901 /* Pattern-matching assignment */
2902#line 2582 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2903 tmpMeta[1] = _restDiff;
2904#line 2582 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2905 if (listEmpty(tmpMeta[1])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2906#line 2582 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2907 tmpMeta[2] = MMC_CAR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (1)))))
;
2908#line 2582 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2909 tmpMeta[3] = MMC_CDR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
;
2910#line 2582 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2911 _de = tmpMeta[2];
2912#line 2582 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2913 _restDiff = tmpMeta[3];
2914#line 2914 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2915
2916#line 2585 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2917 if((!omc_Expression_isZero(threadData, _de)))
2918#line 2585 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2919 {
2920#line 2920 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2921 { /* match expression */
2922 modelica_metatype tmp3_1;
2923 tmp3_1 = _inCall;
2924 {
2925 modelica_metatype _path = NULL((void*)0);
2926 modelica_metatype _attr = NULL((void*)0);
2927 modelica_metatype _ty = NULL((void*)0);
2928 modelica_integer _ix;
2929 modelica_string _name = NULL((void*)0);
2930 int tmp3;
2931 // _path has no default value.
2932 // _attr has no default value.
2933 // _ty has no default value.
2934 // _ix has no default value.
2935 // _name has no default value.
2936 {
2937 switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))) >> 2
) & 255))
) {
2938 case 26: {
2939 modelica_integer tmp4;
2940 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,23,4)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((4 +1) <<
10) + (((23 +3) & 255) << 2)))
== 0) goto tmp2_end;
2941 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
2942 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],13,3)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))==(((3 +1)
<< 10) + (((13 +3) & 255) << 2)))
== 0) goto tmp2_end;
2943 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
2944 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (4)))))
;
2945 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(3)))))
;
2946 tmp4 = mmc_unbox_integer(tmpMeta[5])(((mmc_sint_t) (tmpMeta[5])) >> 1);
2947 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(4)))))
;
2948 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(5)))))
;
2949 _path = tmpMeta[3];
2950 _attr = tmpMeta[4];
2951 _ix = tmp4 /* pattern as ty=Integer */;
2952 _name = tmpMeta[6];
2953 _ty = tmpMeta[7];
2954 /* Pattern matching succeeded */
2955#line 2595 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2956 tmpMeta[2] = mmc_mk_box4(16, &DAE_Exp_CALL__desc, _path, _expLst, _attr);
2957#line 2595 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2958 tmpMeta[3] = mmc_mk_box5(26, &DAE_Exp_RSUB__desc, tmpMeta[2], mmc_mk_integermmc_mk_icon(_ix), _name, _ty);
2959#line 2595 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2960 tmpMeta[1] = tmpMeta[3];
2961#line 2961 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2962 goto tmp2_done;
2963 }
2964 case 25: {
2965 modelica_integer tmp5;
2966 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,22,3)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((3 +1) <<
10) + (((22 +3) & 255) << 2)))
== 0) goto tmp2_end;
2967 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
2968 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],13,3)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))==(((3 +1)
<< 10) + (((13 +3) & 255) << 2)))
== 0) goto tmp2_end;
2969 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
2970 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (4)))))
;
2971 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(3)))))
;
2972 tmp5 = mmc_unbox_integer(tmpMeta[5])(((mmc_sint_t) (tmpMeta[5])) >> 1);
2973 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(4)))))
;
2974 _path = tmpMeta[3];
2975 _attr = tmpMeta[4];
2976 _ix = tmp5 /* pattern as ty=Integer */;
2977 _ty = tmpMeta[6];
2978 /* Pattern matching succeeded */
2979#line 2598 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2980 tmpMeta[2] = mmc_mk_box4(16, &DAE_Exp_CALL__desc, _path, _expLst, _attr);
2981#line 2598 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2982 tmpMeta[3] = mmc_mk_box4(25, &DAE_Exp_TSUB__desc, tmpMeta[2], mmc_mk_integermmc_mk_icon(_ix), _ty);
2983#line 2598 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2984 tmpMeta[1] = tmpMeta[3];
2985#line 2985 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
2986 goto tmp2_done;
2987 }
2988 case 16: {
2989 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,13,3)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((3 +1) <<
10) + (((13 +3) & 255) << 2)))
== 0) goto tmp2_end;
2990 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
2991 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(4)))))
;
2992 _path = tmpMeta[2];
2993 _attr = tmpMeta[3];
2994 /* Pattern matching succeeded */
2995#line 2601 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2996 tmpMeta[2] = mmc_mk_box4(16, &DAE_Exp_CALL__desc, _path, _expLst, _attr);
2997#line 2601 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
2998 tmpMeta[1] = tmpMeta[2];
2999#line 2999 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3000 goto tmp2_done;
3001 }
3002 }
3003 goto tmp2_end;
3004 tmp2_end: ;
3005 }
3006 goto goto_1;
3007 goto_1:;
3008 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3009 goto tmp2_done;
3010 tmp2_done:;
3011 }
3012 }
3013 _res = tmpMeta[1];
3014
3015#line 2604 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3016 _res = omc_Expression_expMul(threadData, _de, _res);
3017#line 3017 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3018
3019#line 2605 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3020 _outExp = omc_Expression_expAdd(threadData, _outExp, _res);
3021#line 3021 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3022 }
3023 }
3024 }
3025 _return: OMC_LABEL_UNUSED__attribute__((unused))
3026 return _outExp;
3027}
3028
3029PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_createPartialDifferentiatedExp(threadData_t *threadData, modelica_metatype _inDiffExpl, modelica_metatype _inDiffExplZero, modelica_metatype _inOrginalExpl, modelica_metatype _inCall, modelica_integer _currentLstElement, modelica_metatype _inAccum)
3030{
3031 modelica_metatype _outExp = NULL((void*)0);
3032 modelica_integer _i;
3033 modelica_metatype tmpMeta[5] __attribute__((unused)) = {0};
3034 MMC_SO()mmc_check_stackoverflow(threadData);
3035 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3036 _outExp = _inAccum;
3037 _i = _currentLstElement;
3038#line 2524 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3039 {
3040#line 2524 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3041 modelica_metatype _de;
3042#line 2524 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3043 for (tmpMeta[0] = _inDiffExpl; !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)))))
)
3044#line 2524 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3045 {
3046#line 2524 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3047 _de = MMC_CAR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (1)))))
;
3048#line 3048 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3049 { /* match expression */
3050 modelica_metatype tmp3_1;modelica_metatype tmp3_2;
3051 tmp3_1 = _de;
3052 tmp3_2 = _inCall;
3053 {
3054 modelica_metatype _eone = NULL((void*)0);
3055 modelica_metatype _eArray = NULL((void*)0);
3056 modelica_metatype _arrayArgs = NULL((void*)0);
3057 modelica_metatype _expl = NULL((void*)0);
3058 modelica_metatype _expLst = NULL((void*)0);
3059 modelica_metatype _dexpLst = NULL((void*)0);
3060 modelica_metatype _tp = NULL((void*)0);
3061 modelica_metatype _dims = NULL((void*)0);
3062 modelica_boolean _b;
3063 modelica_metatype _path = NULL((void*)0);
3064 modelica_metatype _attr = NULL((void*)0);
3065 volatile mmc_switch_type tmp3;
3066 int tmp4;
3067 // _eone has no default value.
3068 // _eArray has no default value.
3069 // _arrayArgs has no default value.
3070 // _expl has no default value.
3071 // _expLst has no default value.
3072 // _dexpLst has no default value.
3073 // _tp has no default value.
3074 // _dims has no default value.
3075 // _b has no default value.
3076 // _path has no default value.
3077 // _attr has no default value.
3078 tmp3 = 0;
3079 for (; tmp3 < 3; tmp3++) {
3080 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
3081 case 0: {
3082 if (mmc__uniontype__metarecord__typedef__equal(tmp3_2,13,3)((*(mmc_uint_t*)((void*)((char*)(tmp3_2) - 3)))==(((3 +1) <<
10) + (((13 +3) & 255) << 2)))
== 0) goto tmp2_end;
3083 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_2), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_2) - 3))) +
(2)))))
;
3084 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_2), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_2) - 3))) +
(4)))))
;
3085
3086 _path = tmpMeta[2];
3087 _attr = tmpMeta[3];
3088 /* Pattern matching succeeded */
3089 /* Check guard condition after assignments */
3090 if (!omc_Types_isRecord(threadData, omc_Expression_typeof(threadData, _de))) goto tmp2_end;
3091#line 2540 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3092 _dexpLst = omc_List_set(threadData, _inDiffExplZero, _i, _de);
3093#line 3093 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3094
3095#line 2541 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3096 _expLst = listAppend(_inOrginalExpl, _dexpLst);
3097#line 3097 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3098#line 2542 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3099 tmpMeta[2] = mmc_mk_box4(16, &DAE_Exp_CALL__desc, _path, _expLst, _attr);
3100#line 2542 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3101 tmpMeta[1] = tmpMeta[2];
3102#line 3102 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3103 goto tmp2_done;
3104 }
3105 case 1: {
3106 modelica_integer tmp5;
3107 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;
3108 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
3109 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(3)))))
;
3110 tmp5 = mmc_unbox_integer(tmpMeta[3])(((mmc_sint_t) (tmpMeta[3])) >> 1);
3111 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(4)))))
;
3112
3113 _tp = tmpMeta[2];
3114 _b = tmp5 /* pattern as ty=Boolean */;
3115 _expl = tmpMeta[4];
3116 /* Pattern matching succeeded */
3117#line 2547 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3118 _eArray = listGet(_inDiffExplZero, _i)boxptr_listGet(threadData,_inDiffExplZero,mmc_mk_icon(_i));
3119#line 3119 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3120
3121#line 2548 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3122 _dexpLst = omc_Expression_arrayElements(threadData, _eArray);
3123#line 3123 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3124
3125#line 2549 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3126 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3127#line 2549 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3128 _arrayArgs = omc_Differentiate_prepareArgumentsExplArray(threadData, _expl, _dexpLst, ((modelica_integer) 1), tmpMeta[2]);
3129#line 3129 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3130
3131#line 2550 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3132 _expLst = omc_List_map2(threadData, _arrayArgs, boxvar_Expression_makeArray((void*)((char*)(&(boxvar_lit_Expression_makeArray).header
) + 3))
, _tp, mmc_mk_boolean(_b)((_b) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))));
3133#line 3133 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3134
3135#line 2551 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3136 _arrayArgs = omc_List_map2r(threadData, _expLst, boxvar_List_set((void*)((char*)(&(boxvar_lit_List_set).header) + 3)), _inDiffExplZero, mmc_mk_integermmc_mk_icon(_i));
3137#line 3137 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3138
3139#line 2552 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3140 _arrayArgs = omc_List_map1r(threadData, _arrayArgs, boxvar_listAppend((void*)((char*)(&(boxvar_lit_listAppend).header) + 3)), _inOrginalExpl);
3141#line 3141 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3142#line 2553 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3143 tmpMeta[1] = omc_Differentiate_createPartialSum(threadData, _arrayArgs, _expl, _inCall, _outExp);
3144#line 3144 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3145 goto tmp2_done;
3146 }
3147 case 2: {
3148
3149 /* Pattern matching succeeded */
3150#line 2558 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3151 _tp = omc_Expression_typeof(threadData, _de);
3152#line 3152 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3153
3154#line 2559 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3155 _dims = omc_Expression_arrayDimension(threadData, _tp);
3156#line 3156 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3157
3158#line 2560 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3159 _eone = omc_Expression_makeOneExpression(threadData, _dims, NULL((void*)0));
3160#line 3160 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3161
3162#line 2561 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3163 _dexpLst = omc_List_set(threadData, _inDiffExplZero, _i, _eone);
3164#line 3164 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3165
3166#line 2562 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3167 _expLst = listAppend(_inOrginalExpl, _dexpLst);
3168#line 3168 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3169#line 2563 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3170 tmpMeta[2] = mmc_mk_cons(_expLst, MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3)));
3171#line 2563 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3172 tmpMeta[3] = mmc_mk_cons(_de, MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3)));
3173#line 2563 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3174 tmpMeta[1] = omc_Differentiate_createPartialSum(threadData, tmpMeta[2], tmpMeta[3], _inCall, _outExp);
3175#line 3175 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3176 goto tmp2_done;
3177 }
3178 }
3179 goto tmp2_end;
3180 tmp2_end: ;
3181 }
3182 goto goto_1;
3183 goto_1:;
3184 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3185 goto tmp2_done;
3186 tmp2_done:;
3187 }
3188 }
3189 _outExp = tmpMeta[1];
3190
3191#line 2566 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3192 _i = ((modelica_integer) 1) + _i;
3193#line 3193 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3194 }
3195 }
3196 _return: OMC_LABEL_UNUSED__attribute__((unused))
3197 return _outExp;
3198}
3199PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_createPartialDifferentiatedExp(threadData_t *threadData, modelica_metatype _inDiffExpl, modelica_metatype _inDiffExplZero, modelica_metatype _inOrginalExpl, modelica_metatype _inCall, modelica_metatype _currentLstElement, modelica_metatype _inAccum)
3200{
3201 modelica_integer tmp1;
3202 modelica_metatype _outExp = NULL((void*)0);
3203 tmp1 = mmc_unbox_integer(_currentLstElement)(((mmc_sint_t) (_currentLstElement)) >> 1);
3204 _outExp = omc_Differentiate_createPartialDifferentiatedExp(threadData, _inDiffExpl, _inDiffExplZero, _inOrginalExpl, _inCall, tmp1, _inAccum);
3205 /* skip box _outExp; DAE.Exp */
3206 return _outExp;
3207}
3208
3209PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_createPartialArgumentsRecord(threadData_t *threadData, modelica_metatype _inTypesLst, modelica_metatype _inVarNames, modelica_metatype _inArgs, modelica_metatype _inDiffedArgs, modelica_metatype _inOrginalExpl, modelica_metatype _inCall)
3210{
3211 modelica_metatype _outExpLst = NULL((void*)0);
3212 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
3213 MMC_SO()mmc_check_stackoverflow(threadData);
3214 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3215 // _outExpLst has no default value.
3216#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3217 {
3218#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3219 modelica_metatype _D_24tmpVar1;
3220#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3221 modelica_metatype* tmp1;
3222#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3223 modelica_metatype _D_24tmpVar0;
3224#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3225 int tmp2;
3226#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3227 modelica_metatype _name_loopVar = 0;
3228#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3229 modelica_metatype _name;
3230#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3231 modelica_metatype _tp_loopVar = 0;
3232#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3233 modelica_metatype _tp;
3234#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3235 _name_loopVar = _inVarNames;
3236#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3237 _tp_loopVar = _inTypesLst;
3238#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3239 tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3240#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3241 _D_24tmpVar1 = tmpMeta[1]; /* defaultValue */
3242#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3243 tmp1 = &_D_24tmpVar1;
3244#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3245 while(1) {
3246#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3247 tmp2 = 2;
3248#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3249 if (!listEmpty(_name_loopVar)((*(mmc_uint_t*)((void*)((char*)(_name_loopVar) - 3))) == (((
0) << 10) + (((0) & 255) << 2)))
) {
3250#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3251 _name = MMC_CAR(_name_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_name_loopVar) -
3))) + (1)))))
;
3252#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3253 _name_loopVar = MMC_CDR(_name_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_name_loopVar) -
3))) + (2)))))
;
3254#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3255 tmp2--;
3256#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3257 }if (!listEmpty(_tp_loopVar)((*(mmc_uint_t*)((void*)((char*)(_tp_loopVar) - 3))) == (((0)
<< 10) + (((0) & 255) << 2)))
) {
3258#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3259 _tp = MMC_CAR(_tp_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_tp_loopVar) - 3
))) + (1)))))
;
3260#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3261 _tp_loopVar = MMC_CDR(_tp_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_tp_loopVar) - 3
))) + (2)))))
;
3262#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3263 tmp2--;
3264#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3265 }
3266#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3267 if (tmp2 == 0) {
3268#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3269 tmpMeta[2] = mmc_mk_box5(26, &DAE_Exp_RSUB__desc, _inCall, mmc_mk_integermmc_mk_icon(((modelica_integer) -1)), _name, _tp);
3270#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3271 _D_24tmpVar0 = omc_Differentiate_createPartialArguments(threadData, _tp, _inArgs, _inDiffedArgs, _inOrginalExpl, tmpMeta[2]);
3272#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3273 *tmp1 = mmc_mk_cons(_D_24tmpVar0,0);
3274#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3275 tmp1 = &MMC_CDR(*tmp1)(*(void**)(((void*)((void**)(((void*)((char*)(*tmp1) - 3))) +
(2)))))
;
3276#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3277 } else if (tmp2 == 2) {
3278#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3279 break;
3280#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3281 } else {
3282#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3283 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3284#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3285 }
3286#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3287 }
3288#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3289 *tmp1 = mmc_mk_nil()((void*)((char*)(&(mmc_nil).header) + 3));
3290#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3291 tmpMeta[0] = _D_24tmpVar1;
3292#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3293 }
3294#line 2508 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3295 _outExpLst = tmpMeta[0];
3296#line 3296 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3297 _return: OMC_LABEL_UNUSED__attribute__((unused))
3298 return _outExpLst;
3299}
3300
3301PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_createPartialArgumentsTuple(threadData_t *threadData, modelica_metatype _inTypesLst, modelica_metatype _inArgs, modelica_metatype _inDiffedArgs, modelica_metatype _inOrginalExpl, modelica_metatype _inCall)
3302{
3303 modelica_metatype _outExpLst = NULL((void*)0);
3304 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
3305 MMC_SO()mmc_check_stackoverflow(threadData);
3306 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3307 // _outExpLst has no default value.
3308#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3309 {
3310#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3311 modelica_metatype _D_24tmpVar3;
3312#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3313 modelica_metatype* tmp1;
3314#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3315 modelica_metatype _D_24tmpVar2;
3316#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3317 int tmp2;
3318#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3319 modelica_integer tmp3;
3320#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3321 modelica_integer tmp4;
3322#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3323 modelica_integer _number;
3324#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3325 modelica_metatype _tp_loopVar = 0;
3326#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3327 modelica_metatype _tp;
3328#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3329 tmp3 = 1 /* Range step-value */;
3330#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3331 tmp4 = listLength(_inTypesLst) /* Range stop-value */;
3332#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3333 _number = ((modelica_integer) 1) /* Range start-value */;
Value stored to '_number' is never read
3334#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3335 _number = (((modelica_integer) 1) /* Range start-value */)-tmp3;
3336#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3337 _tp_loopVar = _inTypesLst;
3338#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3339 tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3340#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3341 _D_24tmpVar3 = tmpMeta[1]; /* defaultValue */
3342#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3343 tmp1 = &_D_24tmpVar3;
3344#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3345 while(1) {
3346#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3347 tmp2 = 2;
3348#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3349 if (tmp3 > 0 ? _number+tmp3 <= tmp4 : _number+tmp3 >= tmp4) {
3350#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3351 _number += tmp3;
3352#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3353 tmp2--;
3354#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3355 }if (!listEmpty(_tp_loopVar)((*(mmc_uint_t*)((void*)((char*)(_tp_loopVar) - 3))) == (((0)
<< 10) + (((0) & 255) << 2)))
) {
3356#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3357 _tp = MMC_CAR(_tp_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_tp_loopVar) - 3
))) + (1)))))
;
3358#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3359 _tp_loopVar = MMC_CDR(_tp_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_tp_loopVar) - 3
))) + (2)))))
;
3360#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3361 tmp2--;
3362#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3363 }
3364#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3365 if (tmp2 == 0) {
3366#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3367 tmpMeta[2] = mmc_mk_box4(25, &DAE_Exp_TSUB__desc, _inCall, mmc_mk_integermmc_mk_icon(_number), _tp);
3368#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3369 _D_24tmpVar2 = omc_Differentiate_createPartialArguments(threadData, _tp, _inArgs, _inDiffedArgs, _inOrginalExpl, tmpMeta[2]);
3370#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3371 *tmp1 = mmc_mk_cons(_D_24tmpVar2,0);
3372#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3373 tmp1 = &MMC_CDR(*tmp1)(*(void**)(((void*)((void**)(((void*)((char*)(*tmp1) - 3))) +
(2)))))
;
3374#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3375 } else if (tmp2 == 2) {
3376#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3377 break;
3378#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3379 } else {
3380#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3381 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3382#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3383 }
3384#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3385 }
3386#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3387 *tmp1 = mmc_mk_nil()((void*)((char*)(&(mmc_nil).header) + 3));
3388#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3389 tmpMeta[0] = _D_24tmpVar3;
3390#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3391 }
3392#line 2493 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3393 _outExpLst = tmpMeta[0];
3394#line 3394 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3395 _return: OMC_LABEL_UNUSED__attribute__((unused))
3396 return _outExpLst;
3397}
3398
3399PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_createPartialArguments(threadData_t *threadData, modelica_metatype _outputType, modelica_metatype _inArgs, modelica_metatype _inDiffedArgs, modelica_metatype _inOrginalExpl, modelica_metatype _inCall)
3400{
3401 modelica_metatype _outExp = NULL((void*)0);
3402 modelica_metatype tmpMeta[5] __attribute__((unused)) = {0};
3403 MMC_SO()mmc_check_stackoverflow(threadData);
3404 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3405 // _outExp has no default value.
3406#line 3406 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3407 { /* matchcontinue expression */
3408 volatile modelica_metatype tmp3_1;volatile modelica_metatype tmp3_2;
3409 tmp3_1 = _outputType;
3410 tmp3_2 = _inCall;
3411 {
3412 modelica_metatype _path = NULL((void*)0);
3413 modelica_metatype _rPath = NULL((void*)0);
3414 modelica_metatype _attr = NULL((void*)0);
3415 modelica_metatype _expLst = NULL((void*)0);
3416 modelica_metatype _ezero = NULL((void*)0);
3417 modelica_metatype _dims = NULL((void*)0);
3418 modelica_metatype _tys = NULL((void*)0);
3419 modelica_metatype _varLst = NULL((void*)0);
3420 modelica_metatype _varNames = NULL((void*)0);
3421 volatile mmc_switch_type tmp3;
3422 int tmp4;
3423 // _path has no default value.
3424 // _rPath has no default value.
3425 // _attr has no default value.
3426 // _expLst has no default value.
3427 // _ezero has no default value.
3428 // _dims has no default value.
3429 // _tys has no default value.
3430 // _varLst has no default value.
3431 // _varNames has no default value.
3432 tmp3 = 0;
3433 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) {
3434 tmp2_top:
3435 threadData->mmc_jumper = &new_mmc_jumper;
3436 for (; tmp3 < 5; tmp3++) {
3437 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
3438 case 0: {
3439 if (mmc__uniontype__metarecord__typedef__equal(tmp3_2,13,3)((*(mmc_uint_t*)((void*)((char*)(tmp3_2) - 3)))==(((3 +1) <<
10) + (((13 +3) & 255) << 2)))
== 0) goto tmp2_end;
3440 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,9,3)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((3 +1) <<
10) + (((9 +3) & 255) << 2)))
== 0) goto tmp2_end;
3441 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
3442 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],3,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((1 +1)
<< 10) + (((3 +3) & 255) << 2)))
== 0) goto tmp2_end;
3443 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
;
3444 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(3)))))
;
3445
3446 _rPath = tmpMeta[2];
3447 _varLst = tmpMeta[3];
3448 tmp3 += 2; /* Pattern matching succeeded; we may skip some cases if we fail */
3449#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3450 {
3451#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3452 modelica_metatype _D_24tmpVar5;
3453#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3454 modelica_metatype* tmp5;
3455#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3456 modelica_metatype _D_24tmpVar4;
3457#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3458 int tmp6;
3459#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3460 modelica_metatype _v_loopVar = 0;
3461#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3462 modelica_metatype _v;
3463#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3464 _v_loopVar = _varLst;
3465#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3466 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3467#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3468 _D_24tmpVar5 = tmpMeta[2]; /* defaultValue */
3469#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3470 tmp5 = &_D_24tmpVar5;
3471#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3472 while(1) {
3473#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3474 tmp6 = 1;
3475#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3476 if (!listEmpty(_v_loopVar)((*(mmc_uint_t*)((void*)((char*)(_v_loopVar) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) {
3477#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3478 _v = MMC_CAR(_v_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_v_loopVar) - 3
))) + (1)))))
;
3479#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3480 _v_loopVar = MMC_CDR(_v_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_v_loopVar) - 3
))) + (2)))))
;
3481#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3482 tmp6--;
3483#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3484 }
3485#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3486 if (tmp6 == 0) {
3487#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3488 _D_24tmpVar4 = omc_DAEUtil_varType(threadData, _v);
3489#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3490 *tmp5 = mmc_mk_cons(_D_24tmpVar4,0);
3491#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3492 tmp5 = &MMC_CDR(*tmp5)(*(void**)(((void*)((void**)(((void*)((char*)(*tmp5) - 3))) +
(2)))))
;
3493#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3494 } else if (tmp6 == 1) {
3495#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3496 break;
3497#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3498 } else {
3499#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3500 goto goto_1;
3501#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3502 }
3503#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3504 }
3505#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3506 *tmp5 = mmc_mk_nil()((void*)((char*)(&(mmc_nil).header) + 3));
3507#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3508 tmpMeta[1] = _D_24tmpVar5;
3509#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3510 }
3511#line 2459 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3512 _tys = tmpMeta[1];
3513#line 3513 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3514
3515#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3516 {
3517#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3518 modelica_metatype _D_24tmpVar7;
3519#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3520 modelica_metatype* tmp7;
3521#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3522 modelica_string _D_24tmpVar6;
3523#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3524 int tmp8;
3525#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3526 modelica_metatype _v_loopVar = 0;
3527#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3528 modelica_metatype _v;
3529#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3530 _v_loopVar = _varLst;
3531#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3532 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3533#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3534 _D_24tmpVar7 = tmpMeta[2]; /* defaultValue */
3535#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3536 tmp7 = &_D_24tmpVar7;
3537#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3538 while(1) {
3539#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3540 tmp8 = 1;
3541#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3542 if (!listEmpty(_v_loopVar)((*(mmc_uint_t*)((void*)((char*)(_v_loopVar) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) {
3543#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3544 _v = MMC_CAR(_v_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_v_loopVar) - 3
))) + (1)))))
;
3545#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3546 _v_loopVar = MMC_CDR(_v_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_v_loopVar) - 3
))) + (2)))))
;
3547#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3548 tmp8--;
3549#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3550 }
3551#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3552 if (tmp8 == 0) {
3553#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3554 _D_24tmpVar6 = omc_DAEUtil_typeVarIdent(threadData, _v);
3555#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3556 *tmp7 = mmc_mk_cons(_D_24tmpVar6,0);
3557#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3558 tmp7 = &MMC_CDR(*tmp7)(*(void**)(((void*)((void**)(((void*)((char*)(*tmp7) - 3))) +
(2)))))
;
3559#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3560 } else if (tmp8 == 1) {
3561#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3562 break;
3563#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3564 } else {
3565#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3566 goto goto_1;
3567#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3568 }
3569#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3570 }
3571#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3572 *tmp7 = mmc_mk_nil()((void*)((char*)(&(mmc_nil).header) + 3));
3573#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3574 tmpMeta[1] = _D_24tmpVar7;
3575#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3576 }
3577#line 2460 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3578 _varNames = tmpMeta[1];
3579#line 3579 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3580
3581#line 2461 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3582 _expLst = omc_Differentiate_createPartialArgumentsRecord(threadData, _tys, _varNames, _inArgs, _inDiffedArgs, _inOrginalExpl, _inCall);
3583#line 3583 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3584#line 2462 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3585 tmpMeta[1] = mmc_mk_box5(17, &DAE_Exp_RECORD__desc, _rPath, _expLst, _varNames, _outputType);
3586#line 2462 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3587 tmpMeta[0] = tmpMeta[1];
3588#line 3588 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3589 goto tmp2_done;
3590 }
3591 case 1: {
3592 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,9,3)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((3 +1) <<
10) + (((9 +3) & 255) << 2)))
== 0) goto tmp2_end;
3593 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
3594 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],3,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((1 +1)
<< 10) + (((3 +3) & 255) << 2)))
== 0) goto tmp2_end;
3595 if (mmc__uniontype__metarecord__typedef__equal(tmp3_2,22,3)((*(mmc_uint_t*)((void*)((char*)(tmp3_2) - 3)))==(((3 +1) <<
10) + (((22 +3) & 255) << 2)))
== 0) goto tmp2_end;
3596 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_2), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_2) - 3))) +
(2)))))
;
3597 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],13,3)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))==(((3 +1)
<< 10) + (((13 +3) & 255) << 2)))
== 0) goto tmp2_end;
3598 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
3599 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (4)))))
;
3600
3601 _path = tmpMeta[3];
3602 _attr = tmpMeta[4];
3603 tmp3 += 1; /* Pattern matching succeeded; we may skip some cases if we fail */
3604#line 2465 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3605 tmpMeta[1] = mmc_mk_box4(16, &DAE_Exp_CALL__desc, _path, listAppend(_inOrginalExpl, _inArgs), _attr);
3606#line 2465 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3607 tmpMeta[0] = tmpMeta[1];
3608#line 3608 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3609 goto tmp2_done;
3610 }
3611 case 2: {
3612 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,14,2)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((2 +1) <<
10) + (((14 +3) & 255) << 2)))
== 0) goto tmp2_end;
3613 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
3614
3615 _tys = tmpMeta[1];
3616 /* Pattern matching succeeded */
3617#line 2468 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3618 _expLst = omc_Differentiate_createPartialArgumentsTuple(threadData, _tys, _inArgs, _inDiffedArgs, _inOrginalExpl, _inCall);
3619#line 3619 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3620#line 2469 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3621 tmpMeta[1] = mmc_mk_box2(22, &DAE_Exp_TUPLE__desc, _expLst);
3622#line 2469 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3623 tmpMeta[0] = tmpMeta[1];
3624#line 3624 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3625 goto tmp2_done;
3626 }
3627 case 3: {
3628
3629 /* Pattern matching succeeded */
3630#line 2473 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3631 _dims = omc_Expression_arrayDimension(threadData, _outputType);
3632#line 3632 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3633
3634#line 2474 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3635 _ezero = omc_Expression_makeZeroExpression(threadData, _dims, NULL((void*)0));
3636#line 3636 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3637#line 2475 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3638 tmpMeta[0] = omc_Differentiate_createPartialDifferentiatedExp(threadData, _inArgs, _inDiffedArgs, _inOrginalExpl, _inCall, ((modelica_integer) 1), _ezero);
3639#line 3639 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3640 goto tmp2_done;
3641 }
3642 case 4: {
3643 if (mmc__uniontype__metarecord__typedef__equal(tmp3_2,13,3)((*(mmc_uint_t*)((void*)((char*)(tmp3_2) - 3)))==(((3 +1) <<
10) + (((13 +3) & 255) << 2)))
== 0) goto tmp2_end;
3644 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_2), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_2) - 3))) +
(2)))))
;
3645 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_2), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_2) - 3))) +
(4)))))
;
3646
3647 _path = tmpMeta[1];
3648 _attr = tmpMeta[2];
3649 /* Pattern matching succeeded */
3650#line 2480 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3651 tmpMeta[1] = mmc_mk_box4(16, &DAE_Exp_CALL__desc, _path, listAppend(_inOrginalExpl, _inArgs), _attr);
3652#line 2480 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3653 tmpMeta[0] = tmpMeta[1];
3654#line 3654 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3655 goto tmp2_done;
3656 }
3657 }
3658 goto tmp2_end;
3659 tmp2_end: ;
3660 }
3661 goto goto_1;
3662 tmp2_done:
3663 (void)tmp3;
3664 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
3665 goto tmp2_done2;
3666 goto_1:;
3667 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
3668 if (++tmp3 < 5) {
3669 goto tmp2_top;
3670 }
3671 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3672 tmp2_done2:;
3673 }
3674 }
3675 _outExp = tmpMeta[0];
3676 _return: OMC_LABEL_UNUSED__attribute__((unused))
3677 return _outExp;
3678}
3679
3680static modelica_metatype closure0_Differentiate_differentiateExp(threadData_t *thData, modelica_metatype closure, modelica_metatype inExp, modelica_metatype inDiffwrtCref, modelica_metatype inInputData, modelica_metatype inDiffType, modelica_metatype inFunctionTree, modelica_metatype tmp5)
3681{
3682 modelica_metatype maxIter = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),1))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (1)))))
;
3683 return boxptr_Differentiate_differentiateExp(thData, inExp, inDiffwrtCref, inInputData, inDiffType, inFunctionTree, maxIter, tmp5);
3684}
3685PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_tryZeroDiff(threadData_t *threadData, modelica_metatype _D_24in_explist, modelica_metatype _D_24in_functions, modelica_integer _maxIter, modelica_metatype *out_functions, modelica_boolean *out_success)
3686{
3687 modelica_metatype _explist = NULL((void*)0);
3688 modelica_metatype _functions = NULL((void*)0);
3689 modelica_boolean _success;
3690 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
3691 MMC_SO()mmc_check_stackoverflow(threadData);
3692 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3693 _explist = _D_24in_explist;
3694 _functions = _D_24in_functions;
3695 // _success has no default value.
3696#line 3696 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3697 { /* matchcontinue expression */
3698 {
3699 volatile mmc_switch_type tmp3;
3700 int tmp4;
3701 tmp3 = 0;
3702 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) {
3703 tmp2_top:
3704 threadData->mmc_jumper = &new_mmc_jumper;
3705 for (; tmp3 < 2; tmp3++) {
3706 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
3707 case 0: {
3708 /* Pattern matching succeeded */
3709#line 2430 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3710 tmpMeta[0] = mmc_mk_box1(0, mmc_mk_integermmc_mk_icon(_maxIter));
3711#line 2430 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3712 _explist = omc_List_map3Fold(threadData, _explist, (modelica_fnptr) mmc_mk_box2(0,closure0_Differentiate_differentiateExp,tmpMeta[0]), _OMC_LIT48((void*)((char*)(&(_OMC_LIT_STRUCT48).header) + 3)), _OMC_LIT28((void*)((char*)(&(_OMC_LIT_STRUCT28).header) + 3)), _OMC_LIT49((void*)((char*)(&(_OMC_LIT_STRUCT49).header) + 3)), _functions ,&_functions);
3713#line 3713 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3714
3715#line 2431 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3716 _success = 1;
3717#line 3717 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3718#line 3718 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3719 goto tmp2_done;
3720 }
3721 case 1: {
3722 /* Pattern matching succeeded */
3723#line 2433 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3724 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3725#line 2433 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3726 _explist = tmpMeta[0];
3727#line 3727 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3728
3729#line 2434 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3730 _success = 0;
3731#line 3731 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3732#line 3732 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3733 goto tmp2_done;
3734 }
3735 }
3736 goto tmp2_end;
3737 tmp2_end: ;
3738 }
3739 goto goto_1;
3740 tmp2_done:
3741 (void)tmp3;
3742 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
3743 goto tmp2_done2;
3744 goto_1:;
3745 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
3746 if (++tmp3 < 2) {
3747 goto tmp2_top;
3748 }
3749 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3750 tmp2_done2:;
3751 }
3752 }
3753 ;
3754 _return: OMC_LABEL_UNUSED__attribute__((unused))
3755 if (out_functions) { *out_functions = _functions; }
3756 if (out_success) { *out_success = _success; }
3757 return _explist;
3758}
3759PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_tryZeroDiff(threadData_t *threadData, modelica_metatype _D_24in_explist, modelica_metatype _D_24in_functions, modelica_metatype _maxIter, modelica_metatype *out_functions, modelica_metatype *out_success)
3760{
3761 modelica_integer tmp1;
3762 modelica_boolean _success;
3763 modelica_metatype _explist = NULL((void*)0);
3764 tmp1 = mmc_unbox_integer(_maxIter)(((mmc_sint_t) (_maxIter)) >> 1);
3765 _explist = omc_Differentiate_tryZeroDiff(threadData, _D_24in_explist, _D_24in_functions, tmp1, out_functions, &_success);
3766 /* skip box _explist; list<DAE.Exp> */
3767 /* skip box _functions; DAE.AvlTreePathFunction.Tree */
3768 if (out_success) { *out_success = mmc_mk_icon(_success); }
3769 return _explist;
3770}
3771
3772static modelica_metatype closure1_Differentiate_differentiateExp(threadData_t *thData, modelica_metatype closure, modelica_metatype inExp, modelica_metatype inDiffwrtCref, modelica_metatype inInputData, modelica_metatype inDiffType, modelica_metatype inFunctionTree, modelica_metatype tmp10)
3773{
3774 modelica_metatype maxIter = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),1))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (1)))))
;
3775 return boxptr_Differentiate_differentiateExp(thData, inExp, inDiffwrtCref, inInputData, inDiffType, inFunctionTree, maxIter, tmp10);
3776}static modelica_metatype closure2_Differentiate_differentiateExp(threadData_t *thData, modelica_metatype closure, modelica_metatype inExp, modelica_metatype inDiffwrtCref, modelica_metatype inInputData, modelica_metatype inDiffType, modelica_metatype inFunctionTree, modelica_metatype tmp11)
3777{
3778 modelica_metatype maxIter = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),1))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (1)))))
;
3779 return boxptr_Differentiate_differentiateExp(thData, inExp, inDiffwrtCref, inInputData, inDiffType, inFunctionTree, maxIter, tmp11);
3780}static modelica_metatype closure3_Differentiate_differentiateExp(threadData_t *thData, modelica_metatype closure, modelica_metatype inExp, modelica_metatype inDiffwrtCref, modelica_metatype inInputData, modelica_metatype inDiffType, modelica_metatype inFunctionTree, modelica_metatype tmp20)
3781{
3782 modelica_metatype maxIter = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),1))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (1)))))
;
3783 return boxptr_Differentiate_differentiateExp(thData, inExp, inDiffwrtCref, inInputData, inDiffType, inFunctionTree, maxIter, tmp20);
3784}
3785PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiateFunctionCallPartial(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_integer _maxIter, modelica_metatype *out_outFunctionTree)
3786{
3787 modelica_metatype _outDiffedExp = NULL((void*)0);
3788 modelica_metatype _outFunctionTree = NULL((void*)0);
3789 modelica_metatype tmpMeta[10] __attribute__((unused)) = {0};
3790 MMC_SO()mmc_check_stackoverflow(threadData);
3791 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3792 // _outDiffedExp has no default value.
3793 // _outFunctionTree has no default value.
3794#line 2254 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3795
3796#line 2254 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3797
3798#line 3798 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3799 { /* matchcontinue expression */
3800 volatile modelica_metatype tmp4_1;
3801 tmp4_1 = _inExp;
3802 {
3803 modelica_metatype _diffFuncData = NULL((void*)0);
3804 modelica_metatype _e = NULL((void*)0);
3805 modelica_metatype _exp = NULL((void*)0);
3806 modelica_metatype _expl = NULL((void*)0);
3807 modelica_metatype _expl1 = NULL((void*)0);
3808 modelica_metatype _dexpl = NULL((void*)0);
3809 modelica_metatype _dexplZero = NULL((void*)0);
3810 modelica_metatype _path = NULL((void*)0);
3811 modelica_metatype _dpath = NULL((void*)0);
3812 modelica_boolean _b;
3813 modelica_boolean _c;
3814 modelica_boolean _isImpure;
3815 modelica_metatype _dinl = NULL((void*)0);
3816 modelica_metatype _ty = NULL((void*)0);
3817 modelica_metatype _dtp = NULL((void*)0);
3818 modelica_metatype _functions = NULL((void*)0);
3819 modelica_metatype _mapper = NULL((void*)0);
3820 modelica_metatype _tp = NULL((void*)0);
3821 modelica_metatype _blst = NULL((void*)0);
3822 modelica_metatype _tlst = NULL((void*)0);
3823 modelica_metatype _expBoolLst = NULL((void*)0);
3824 modelica_string _typstring = NULL((void*)0);
3825 modelica_string _dastring = NULL((void*)0);
3826 modelica_string _funstring = NULL((void*)0);
3827 modelica_string _str = NULL((void*)0);
3828 modelica_metatype _typlststring = NULL((void*)0);
3829 modelica_metatype _tc = NULL((void*)0);
3830 modelica_metatype _inputVarsDer = NULL((void*)0);
3831 modelica_metatype _outputVarsDer = NULL((void*)0);
3832 modelica_metatype _func = NULL((void*)0);
3833 modelica_metatype _dfunc = NULL((void*)0);
3834 modelica_string _funcname = NULL((void*)0);
3835 modelica_boolean _success;
3836 volatile mmc_switch_type tmp4;
3837 int tmp5;
3838 // _diffFuncData has no default value.
3839 // _e has no default value.
3840 // _exp has no default value.
3841 // _expl has no default value.
3842 // _expl1 has no default value.
3843 // _dexpl has no default value.
3844 // _dexplZero has no default value.
3845 // _path has no default value.
3846 // _dpath has no default value.
3847 // _b has no default value.
3848 // _c has no default value.
3849 // _isImpure has no default value.
3850 // _dinl has no default value.
3851 // _ty has no default value.
3852 // _dtp has no default value.
3853 // _functions has no default value.
3854 // _mapper has no default value.
3855 // _tp has no default value.
3856 // _blst has no default value.
3857 // _tlst has no default value.
3858 // _expBoolLst has no default value.
3859 // _typstring has no default value.
3860 // _dastring has no default value.
3861 // _funstring has no default value.
3862 // _str has no default value.
3863 // _typlststring has no default value.
3864 // _tc has no default value.
3865 // _inputVarsDer has no default value.
3866 // _outputVarsDer has no default value.
3867 // _func has no default value.
3868 // _dfunc has no default value.
3869 // _funcname has no default value.
3870 // _success has no default value.
3871 tmp4 = 0;
3872 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) {
3873 tmp3_top:
3874 threadData->mmc_jumper = &new_mmc_jumper;
3875 for (; tmp4 < 4; tmp4++) {
3876 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
3877 case 0: {
3878 modelica_integer tmp6;
3879 modelica_integer tmp7;
3880 modelica_integer tmp8;
3881 modelica_boolean tmp9;
3882 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;
3883 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
3884 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
3885 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(4)))))
;
3886 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (2)))))
;
3887 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (3)))))
;
3888 tmp6 = mmc_unbox_integer(tmpMeta[6])(((mmc_sint_t) (tmpMeta[6])) >> 1);
3889 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (4)))))
;
3890 tmp7 = mmc_unbox_integer(tmpMeta[7])(((mmc_sint_t) (tmpMeta[7])) >> 1);
3891 tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (5)))))
;
3892 tmp8 = mmc_unbox_integer(tmpMeta[8])(((mmc_sint_t) (tmpMeta[8])) >> 1);
3893 tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 8))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (8)))))
;
3894 _path = tmpMeta[2];
3895 _expl = tmpMeta[3];
3896 _ty = tmpMeta[5];
3897 _b = tmp6 /* pattern as ty=Boolean */;
3898 _c = tmp7 /* pattern as ty=Boolean */;
3899 _isImpure = tmp8 /* pattern as ty=Boolean */;
3900 _tc = tmpMeta[9];
3901 /* Pattern matching succeeded */
3902#line 2295 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3903 _mapper = omc_Differentiate_getFunctionMapper(threadData, _path, _inFunctionTree ,&_tp);
3904#line 3904 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3905
3906#line 2296 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3907 tmpMeta[2] = mmc_mk_box4(0, _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree);
3908#line 2296 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3909 _dpath = omc_Differentiate_differentiateFunction1(threadData, _path, _mapper, _tp, _expl, tmpMeta[2] ,&_blst);
3910#line 3910 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3911
3912#line 2297 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3913 /* Pattern-matching assignment */
3914#line 2297 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3915 tmpMeta[2] = omc_DAE_AvlTreePathFunction_get(threadData, _inFunctionTree, _dpath);
3916#line 2297 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3917 if (optionNone(tmpMeta[2])(0==((((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))) &
(7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2])
- 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char*)
(tmpMeta[2]) - 3)))) >> 10)) ? 1 : 0)
) goto goto_2;
3918#line 2297 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3919 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (1)))))
;
3920#line 2297 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3921 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],0,9)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3)))==(((9 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto goto_2;
3922#line 2297 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3923 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (4)))))
;
3924#line 2297 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3925 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 8))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (8)))))
;
3926#line 2297 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3927 _dtp = tmpMeta[4];
3928#line 2297 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3929 _dinl = tmpMeta[5];
3930#line 3930 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3931
3932#line 2299 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3933 /* Pattern-matching tuple assignment */
3934#line 2299 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3935 tmp9 = omc_Differentiate_checkDerivativeFunctionInputs(threadData, _blst, _tp, _dtp, NULL((void*)0));
3936#line 2299 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3937 if (1 != tmp9) goto goto_2;
3938#line 3938 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3939
3940#line 2300 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3941 _expl1 = omc_List_splitOnBoolList(threadData, _expl, _blst, NULL((void*)0));
3942#line 3942 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3943
3944#line 2301 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3945 tmpMeta[2] = mmc_mk_box1(0, mmc_mk_integermmc_mk_icon(_maxIter));
3946#line 2301 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3947 _dexpl = omc_List_map3Fold(threadData, _expl1, (modelica_fnptr) mmc_mk_box2(0,closure1_Differentiate_differentiateExp,tmpMeta[2]), _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree ,&_functions);
3948#line 3948 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3949
3950#line 2302 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3951 _funcname = omc_BackendUtil_modelicaStringToCStr(threadData, omc_AbsynUtil_pathString(threadData, _path, _OMC_LIT23((void*)((char*)(&(_OMC_LIT_STRUCT23).header) + 3)), 1, 0), 0);
3952#line 3952 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3953
3954#line 2303 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3955 _diffFuncData = _OMC_LIT28((void*)((char*)(&(_OMC_LIT_STRUCT28).header) + 3));
3956#line 3956 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3957
3958#line 2304 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3959 tmpMeta[2] = MMC_TAGPTR(mmc_alloc_words(10))((void*)((char*)(mmc_alloc_words(10)) + 3));
3960#line 2304 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3961 memcpy(MMC_UNTAGPTR(tmpMeta[2])((void*)((char*)(tmpMeta[2]) - 3)), MMC_UNTAGPTR(_diffFuncData)((void*)((char*)(_diffFuncData) - 3)), 10*sizeof(modelica_metatype));
3962#line 2304 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3963 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[2])((void*)((char*)(tmpMeta[2]) - 3)))[8] = mmc_mk_some(_funcname);
3964#line 2304 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3965 _diffFuncData = tmpMeta[2];
3966#line 3966 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3967
3968#line 2305 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3969 tmpMeta[2] = mmc_mk_box1(0, mmc_mk_integermmc_mk_icon(_maxIter));
3970#line 2305 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3971 _dexplZero = omc_List_map3Fold(threadData, _expl1, (modelica_fnptr) mmc_mk_box2(0,closure2_Differentiate_differentiateExp,tmpMeta[2]), _OMC_LIT48((void*)((char*)(&(_OMC_LIT_STRUCT48).header) + 3)), _diffFuncData, _OMC_LIT49((void*)((char*)(&(_OMC_LIT_STRUCT49).header) + 3)), _functions ,&_functions);
3972#line 3972 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3973
3974#line 2307 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3975 if(omc_Flags_isSet(threadData, _OMC_LIT56((void*)((char*)(&(_OMC_LIT_STRUCT56).header) + 3))))
3976#line 2307 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3977 {
3978#line 2308 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3979 fputs(MMC_STRINGDATA(_OMC_LIT50)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT50).header) + 3))) - 3)))->data)
,stdoutstdout);
3980#line 3980 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3981
3982#line 2309 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3983 fputs(MMC_STRINGDATA(_OMC_LIT51)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT51).header) + 3))) - 3)))->data)
,stdoutstdout);
3984#line 3984 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3985
3986#line 2310 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3987 tmpMeta[2] = stringAppend(stringDelimitList(omc_List_map(threadData, _dexpl, boxvar_ExpressionDump_printExpStr((void*)((char*)(&(boxvar_lit_ExpressionDump_printExpStr)
.header) + 3))
), _OMC_LIT52((void*)((char*)(&(_OMC_LIT_STRUCT52).header) + 3))),_OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)));
3988#line 2310 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3989 fputs(MMC_STRINGDATA(tmpMeta[2])(((struct mmc_string*)((void*)((char*)(tmpMeta[2]) - 3)))->
data)
,stdoutstdout);
3990#line 3990 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
3991 }
3992
3993#line 2312 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3994 tmpMeta[2] = mmc_mk_box8(3, &DAE_CallAttributes_CALL__ATTR__desc, _ty, mmc_mk_boolean(_b)((_b) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), mmc_mk_boolean(_c)((_c) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), mmc_mk_boolean(_isImpure)((_isImpure) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), mmc_mk_boolean(0)((0) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), _dinl, _tc);
3995#line 2312 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3996 tmpMeta[3] = mmc_mk_box4(16, &DAE_Exp_CALL__desc, _dpath, _expl1, tmpMeta[2]);
3997#line 2312 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
3998 _e = tmpMeta[3];
3999#line 3999 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4000
4001#line 2313 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4002 _e = omc_Differentiate_createPartialArguments(threadData, _ty, _dexpl, _dexplZero, _expl, _e);
4003#line 4003 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4004#line 2314 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4005 tmpMeta[0+0] = _e;
4006#line 2314 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4007 tmpMeta[0+1] = _functions;
4008#line 4008 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4009 goto tmp3_done;
4010 }
4011 case 1: {
4012 modelica_boolean tmp12;
4013 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;
4014 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
4015 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
4016
4017 _path = tmpMeta[2];
4018 _expl = tmpMeta[3];
4019 /* Pattern matching succeeded */
4020#line 2321 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4021 _mapper = omc_Differentiate_getFunctionMapper(threadData, _path, _inFunctionTree ,&_tp);
4022#line 4022 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4023
4024#line 2322 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4025 tmpMeta[2] = mmc_mk_box4(0, _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree);
4026#line 2322 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4027 _dpath = omc_Differentiate_differentiateFunction1(threadData, _path, _mapper, _tp, _expl, tmpMeta[2] ,&_blst);
4028#line 4028 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4029
4030#line 2323 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4031 /* Pattern-matching assignment */
4032#line 2323 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4033 tmpMeta[2] = omc_DAE_AvlTreePathFunction_get(threadData, _inFunctionTree, _dpath);
4034#line 2323 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4035 if (optionNone(tmpMeta[2])(0==((((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))) &
(7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2])
- 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char*)
(tmpMeta[2]) - 3)))) >> 10)) ? 1 : 0)
) goto goto_2;
4036#line 2323 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4037 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (1)))))
;
4038#line 2323 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4039 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],0,9)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3)))==(((9 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto goto_2;
4040#line 2323 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4041 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (4)))))
;
4042#line 2323 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4043 _dtp = tmpMeta[4];
4044#line 4044 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4045
4046#line 2325 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4047 /* Pattern-matching tuple assignment */
4048#line 2325 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4049 tmp12 = omc_Differentiate_checkDerivativeFunctionInputs(threadData, _blst, _tp, _dtp, &tmpMeta[2]);
4050#line 2325 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4051 if (0 != tmp12) goto goto_2;
4052#line 2325 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4053 _tlst = tmpMeta[2];
4054#line 4054 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4055
4056#line 2327 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4057 _typlststring = omc_List_map(threadData, _tlst, boxvar_Types_unparseType((void*)((char*)(&(boxvar_lit_Types_unparseType).header) +
3))
);
4058#line 4058 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4059
4060#line 2328 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4061 tmpMeta[2] = stringAppend(_OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)),stringDelimitList(_typlststring, _OMC_LIT57((void*)((char*)(&(_OMC_LIT_STRUCT57).header) + 3))));
4062#line 2328 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4063 _typstring = tmpMeta[2];
4064#line 4064 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4065
4066#line 2329 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4067 _dastring = omc_AbsynUtil_pathString(threadData, _dpath, _OMC_LIT23((void*)((char*)(&(_OMC_LIT_STRUCT23).header) + 3)), 1, 0);
4068#line 4068 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4069
4070#line 2330 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4071 fputs(MMC_STRINGDATA(_OMC_LIT58)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT58).header) + 3))) - 3)))->data)
,stdoutstdout);
4072#line 4072 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4073
4074#line 2331 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4075 tmpMeta[2] = mmc_mk_cons(_dastring, mmc_mk_cons(_typstring, MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))));
4076#line 2331 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4077 omc_Error_addMessage(threadData, _OMC_LIT62((void*)((char*)(&(_OMC_LIT_STRUCT62).header) + 3)), tmpMeta[2]);
4078#line 4078 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4079#line 2332 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4080 goto goto_2;
4081#line 4081 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4082 goto tmp3_done;
4083 }
4084 case 2: {
4085 modelica_integer tmp13;
4086 modelica_integer tmp14;
4087 modelica_integer tmp15;
4088 modelica_boolean tmp16;
4089 modelica_boolean tmp18;
4090 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;
4091 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
4092 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
4093 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(4)))))
;
4094 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (2)))))
;
4095 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (3)))))
;
4096 tmp13 = mmc_unbox_integer(tmpMeta[6])(((mmc_sint_t) (tmpMeta[6])) >> 1);
4097 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (4)))))
;
4098 tmp14 = mmc_unbox_integer(tmpMeta[7])(((mmc_sint_t) (tmpMeta[7])) >> 1);
4099 if (0 != tmp14) goto tmp3_end;
4100 tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (5)))))
;
4101 tmp15 = mmc_unbox_integer(tmpMeta[8])(((mmc_sint_t) (tmpMeta[8])) >> 1);
4102 tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 8))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (8)))))
;
4103 _e = tmp4_1;
4104 _path = tmpMeta[2];
4105 _expl = tmpMeta[3];
4106 _ty = tmpMeta[5];
4107 _b = tmp13 /* pattern as ty=Boolean */;
4108 _isImpure = tmp15 /* pattern as ty=Boolean */;
4109 _tc = tmpMeta[9];
4110 /* Pattern matching succeeded */
4111#line 2340 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4112 tmp16 = 0; /* begin failure */
4113#line 2340 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4114 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) {
4115#line 2340 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4116 /* Pattern-matching assignment */
4117#line 2340 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4118 tmpMeta[2] = _inDiffType;
4119#line 2340 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4120 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],1,0)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))==(((0 +1)
<< 10) + (((1 +3) & 255) << 2)))
== 0) goto goto_17;
4121#line 4121 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4122 tmp16 = 1;
4123 goto goto_17;
4124 goto_17:;
4125 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
4126 if (tmp16) {goto goto_2;} /* end failure */
4127
4128#line 2341 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4129 tmp18 = 0; /* begin failure */
4130#line 2341 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4131 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) {
4132#line 2341 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4133 /* Pattern-matching assignment */
4134#line 2341 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4135 tmpMeta[2] = _inDiffType;
4136#line 2341 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4137 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],3,0)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))==(((0 +1)
<< 10) + (((3 +3) & 255) << 2)))
== 0) goto goto_19;
4138#line 4138 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4139 tmp18 = 1;
4140 goto goto_19;
4141 goto_19:;
4142 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
4143 if (tmp18) {goto goto_2;} /* end failure */
4144
4145#line 2344 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4146 /* Pattern-matching assignment */
4147#line 2344 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4148 tmpMeta[2] = omc_DAE_AvlTreePathFunction_get(threadData, _inFunctionTree, _path);
4149#line 2344 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4150 if (optionNone(tmpMeta[2])(0==((((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))) &
(7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2])
- 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char*)
(tmpMeta[2]) - 3)))) >> 10)) ? 1 : 0)
) goto goto_2;
4151#line 2344 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4152 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (1)))))
;
4153#line 2344 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4154 _func = tmpMeta[3];
4155#line 4155 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4156
4157#line 2347 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4158 if((!omc_AvlSetPath_hasKey(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_inInputData), 9))(*(void**)(((void*)((void**)(((void*)((char*)(_inInputData) -
3))) + (9)))))
), _path)))
4159#line 2347 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4160 {
4161#line 2350 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4162 tmpMeta[2] = MMC_TAGPTR(mmc_alloc_words(10))((void*)((char*)(mmc_alloc_words(10)) + 3));
4163#line 2350 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4164 memcpy(MMC_UNTAGPTR(tmpMeta[2])((void*)((char*)(tmpMeta[2]) - 3)), MMC_UNTAGPTR(_inInputData)((void*)((char*)(_inInputData) - 3)), 10*sizeof(modelica_metatype));
4165#line 2350 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4166 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[2])((void*)((char*)(tmpMeta[2]) - 3)))[9] = omc_AvlSetPath_add(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_inInputData), 9))(*(void**)(((void*)((void**)(((void*)((char*)(_inInputData) -
3))) + (9)))))
), _path);
4167#line 2350 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4168 _inInputData = tmpMeta[2];
4169#line 4169 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4170
4171#line 2352 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4172 _dfunc = omc_Differentiate_differentiatePartialFunction(threadData, _func, _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree, _maxIter ,&_functions ,&_blst);
4173#line 4173 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4174
4175#line 2354 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4176 _dpath = omc_DAEUtil_functionName(threadData, _dfunc);
4177#line 4177 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4178
4179#line 2355 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4180 /* Pattern-matching assignment */
4181#line 2355 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4182 tmpMeta[2] = omc_DAEUtil_getFunctionType(threadData, _dfunc);
4183#line 2355 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4184 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],11,4)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))==(((4 +1)
<< 10) + (((11 +3) & 255) << 2)))
== 0) goto goto_2;
4185#line 2355 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4186 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (3)))))
;
4187#line 2355 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4188 _dtp = tmpMeta[3];
4189#line 4189 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4190
4191#line 2358 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4192 if(omc_Flags_isSet(threadData, _OMC_LIT36((void*)((char*)(&(_OMC_LIT_STRUCT36).header) + 3))))
4193#line 2358 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4194 {
4195#line 2359 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4196 _funstring = omc_Tpl_tplString(threadData, boxvar_DAEDumpTpl_dumpFunction((void*)((char*)(&(boxvar_lit_DAEDumpTpl_dumpFunction).header
) + 3))
, _dfunc);
4197#line 4197 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4198
4199#line 2360 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4200 tmpMeta[2] = stringAppend(_OMC_LIT63((void*)((char*)(&(_OMC_LIT_STRUCT63).header) + 3)),_funstring);
4201#line 2360 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4202 tmpMeta[3] = stringAppend(tmpMeta[2],_OMC_LIT32((void*)((char*)(&(_OMC_LIT_STRUCT32).header) + 3)));
4203#line 2360 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4204 fputs(MMC_STRINGDATA(tmpMeta[3])(((struct mmc_string*)((void*)((char*)(tmpMeta[3]) - 3)))->
data)
,stdoutstdout);
4205#line 4205 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4206 }
4207
4208#line 2363 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4209 tmpMeta[2] = mmc_mk_cons(_dfunc, MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3)));
4210#line 2363 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4211 _functions = omc_DAEUtil_addDaeFunction(threadData, tmpMeta[2], _functions);
4212#line 4212 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4213
4214#line 2365 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4215 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
4216#line 2365 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4217 tmpMeta[3] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
4218#line 2365 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4219 tmpMeta[4] = mmc_mk_box7(5, &DAE_FunctionDefinition_FUNCTION__DER__MAPPER__desc, _path, _dpath, mmc_mk_integermmc_mk_icon(((modelica_integer) 1)), tmpMeta[2], mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), tmpMeta[3]);
4220#line 2365 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4221 _func = omc_DAEUtil_addFunctionDefinition(threadData, _func, tmpMeta[4]);
4222#line 4222 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4223
4224#line 2366 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4225 _functions = omc_DAE_AvlTreePathFunction_add(threadData, _functions, _path, mmc_mk_some(_func), boxvar_DAE_AvlTreePathFunction_addConflictDefault((void*)((char*)(&(boxvar_lit_DAE_AvlTreePathFunction_addConflictDefault
).header) + 3))
);
4226#line 4226 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4227 }
4228 else
4229 {
4230#line 2368 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4231 _functions = omc_Differentiate_getFunctionInOutVars(threadData, _func, _inFunctionTree, _inDiffwrtCref, _maxIter ,&_inputVarsDer ,NULL((void*)0) ,&_outputVarsDer ,NULL((void*)0) ,&_blst);
4232#line 4232 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4233
4234#line 2369 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4235 _dpath = omc_Differentiate_getDiffedTypeandName(threadData, _func, _inputVarsDer, _outputVarsDer, _blst ,&_dtp);
4236#line 4236 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4237
4238#line 2370 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4239 /* Pattern-matching assignment */
4240#line 2370 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4241 tmpMeta[2] = _dtp;
4242#line 2370 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4243 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],11,4)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))==(((4 +1)
<< 10) + (((11 +3) & 255) << 2)))
== 0) goto goto_2;
4244#line 2370 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4245 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (3)))))
;
4246#line 2370 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4247 _dtp = tmpMeta[3];
4248#line 4248 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4249 }
4250
4251#line 2375 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4252 if(omc_Flags_isSet(threadData, _OMC_LIT36((void*)((char*)(&(_OMC_LIT_STRUCT36).header) + 3))))
4253#line 2375 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4254 {
4255#line 2376 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4256 fputs(MMC_STRINGDATA(_OMC_LIT64)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT64).header) + 3))) - 3)))->data)
,stdoutstdout);
4257#line 4257 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4258
4259#line 2377 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4260 tmpMeta[2] = stringAppend(stringDelimitList(omc_List_map(threadData, _expl, boxvar_ExpressionDump_printExpStr((void*)((char*)(&(boxvar_lit_ExpressionDump_printExpStr)
.header) + 3))
), _OMC_LIT52((void*)((char*)(&(_OMC_LIT_STRUCT52).header) + 3))),_OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)));
4261#line 2377 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4262 fputs(MMC_STRINGDATA(tmpMeta[2])(((struct mmc_string*)((void*)((char*)(tmpMeta[2]) - 3)))->
data)
,stdoutstdout);
4263#line 4263 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4264
4265#line 2378 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4266 fputs(MMC_STRINGDATA(_OMC_LIT65)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT65).header) + 3))) - 3)))->data)
,stdoutstdout);
4267#line 4267 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4268
4269#line 2379 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4270 tmpMeta[2] = stringAppend(stringDelimitList(omc_List_mapMap(threadData, _expl, boxvar_Expression_typeof((void*)((char*)(&(boxvar_lit_Expression_typeof).header) +
3))
, boxvar_Types_printTypeStr((void*)((char*)(&(boxvar_lit_Types_printTypeStr).header)
+ 3))
), _OMC_LIT66((void*)((char*)(&(_OMC_LIT_STRUCT66).header) + 3))),_OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)));
4271#line 2379 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4272 fputs(MMC_STRINGDATA(tmpMeta[2])(((struct mmc_string*)((void*)((char*)(tmpMeta[2]) - 3)))->
data)
,stdoutstdout);
4273#line 4273 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4274
4275#line 2380 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4276 tmpMeta[2] = stringAppend(_OMC_LIT67((void*)((char*)(&(_OMC_LIT_STRUCT67).header) + 3)),omc_Types_printTypeStr(threadData, _dtp));
4277#line 2380 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4278 tmpMeta[3] = stringAppend(tmpMeta[2],_OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)));
4279#line 2380 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4280 fputs(MMC_STRINGDATA(tmpMeta[3])(((struct mmc_string*)((void*)((char*)(tmpMeta[3]) - 3)))->
data)
,stdoutstdout);
4281#line 4281 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4282 }
4283
4284#line 2384 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4285 _expBoolLst = omc_List_threadTuple(threadData, _expl, _blst);
4286#line 4286 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4287
4288#line 2385 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4289 _expBoolLst = omc_List_filterOnTrue(threadData, _expBoolLst, boxvar_Util_tuple22((void*)((char*)(&(boxvar_lit_Util_tuple22).header) + 3)));
4290#line 4290 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4291
4292#line 2386 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4293 _expl1 = omc_List_map(threadData, _expBoolLst, boxvar_Util_tuple21((void*)((char*)(&(boxvar_lit_Util_tuple21).header) + 3)));
4294#line 4294 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4295
4296#line 2387 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4297 if(omc_Flags_isSet(threadData, _OMC_LIT36((void*)((char*)(&(_OMC_LIT_STRUCT36).header) + 3))))
4298#line 2387 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4299 {
4300#line 2388 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4301 fputs(MMC_STRINGDATA(_OMC_LIT68)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT68).header) + 3))) - 3)))->data)
,stdoutstdout);
4302#line 4302 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4303
4304#line 2389 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4305 tmpMeta[2] = stringAppend(stringDelimitList(omc_List_map(threadData, _expl1, boxvar_ExpressionDump_printExpStr((void*)((char*)(&(boxvar_lit_ExpressionDump_printExpStr)
.header) + 3))
), _OMC_LIT52((void*)((char*)(&(_OMC_LIT_STRUCT52).header) + 3))),_OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)));
4306#line 2389 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4307 fputs(MMC_STRINGDATA(tmpMeta[2])(((struct mmc_string*)((void*)((char*)(tmpMeta[2]) - 3)))->
data)
,stdoutstdout);
4308#line 4308 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4309 }
4310
4311#line 2392 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4312 tmpMeta[2] = mmc_mk_box1(0, mmc_mk_integermmc_mk_icon(_maxIter));
4313#line 2392 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4314 _dexpl = omc_List_map3Fold(threadData, _expl1, (modelica_fnptr) mmc_mk_box2(0,closure3_Differentiate_differentiateExp,tmpMeta[2]), _inDiffwrtCref, _inInputData, _inDiffType, _functions ,&_functions);
4315#line 4315 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4316
4317#line 2393 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4318 if(omc_Flags_isSet(threadData, _OMC_LIT36((void*)((char*)(&(_OMC_LIT_STRUCT36).header) + 3))))
4319#line 2393 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4320 {
4321#line 2394 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4322 fputs(MMC_STRINGDATA(_OMC_LIT69)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT69).header) + 3))) - 3)))->data)
,stdoutstdout);
4323#line 4323 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4324
4325#line 2395 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4326 tmpMeta[2] = stringAppend(stringDelimitList(omc_List_map(threadData, _dexpl, boxvar_ExpressionDump_printExpStr((void*)((char*)(&(boxvar_lit_ExpressionDump_printExpStr)
.header) + 3))
), _OMC_LIT52((void*)((char*)(&(_OMC_LIT_STRUCT52).header) + 3))),_OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)));
4327#line 2395 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4328 fputs(MMC_STRINGDATA(tmpMeta[2])(((struct mmc_string*)((void*)((char*)(tmpMeta[2]) - 3)))->
data)
,stdoutstdout);
4329#line 4329 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4330 }
4331
4332#line 2399 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4333 _dexplZero = omc_Differentiate_tryZeroDiff(threadData, _expl1, _functions, _maxIter ,&_functions ,&_success);
4334#line 4334 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4335
4336#line 2400 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4337 if(_success)
4338#line 2400 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4339 {
4340#line 2401 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4341 tmpMeta[2] = mmc_mk_box8(3, &DAE_CallAttributes_CALL__ATTR__desc, _dtp, mmc_mk_boolean(_b)((_b) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), mmc_mk_boolean(0)((0) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), mmc_mk_boolean(_isImpure)((_isImpure) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), mmc_mk_boolean(0)((0) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), _OMC_LIT70((void*)((char*)(&(_OMC_LIT_STRUCT70).header) + 3)), _tc);
4342#line 2401 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4343 tmpMeta[3] = mmc_mk_box4(16, &DAE_Exp_CALL__desc, _dpath, _dexpl, tmpMeta[2]);
4344#line 2401 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4345 _e = tmpMeta[3];
4346#line 4346 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4347
4348#line 2402 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4349 _exp = omc_Differentiate_createPartialArguments(threadData, _ty, _dexpl, _dexplZero, _expl, _e);
4350#line 4350 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4351 }
4352 else
4353 {
4354#line 2404 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4355 tmpMeta[2] = mmc_mk_box8(3, &DAE_CallAttributes_CALL__ATTR__desc, _dtp, mmc_mk_boolean(_b)((_b) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), mmc_mk_boolean(0)((0) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), mmc_mk_boolean(_isImpure)((_isImpure) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), mmc_mk_boolean(0)((0) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), _OMC_LIT70((void*)((char*)(&(_OMC_LIT_STRUCT70).header) + 3)), _tc);
4356#line 2404 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4357 tmpMeta[3] = mmc_mk_box4(16, &DAE_Exp_CALL__desc, _dpath, listAppend(_expl, _dexpl), tmpMeta[2]);
4358#line 2404 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4359 _exp = tmpMeta[3];
4360#line 4360 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4361 }
4362
4363#line 2407 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4364 if(omc_Flags_isSet(threadData, _OMC_LIT36((void*)((char*)(&(_OMC_LIT_STRUCT36).header) + 3))))
4365#line 2407 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4366 {
4367#line 2408 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4368 fputs(MMC_STRINGDATA(_OMC_LIT71)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT71).header) + 3))) - 3)))->data)
,stdoutstdout);
4369#line 4369 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4370
4371#line 2409 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4372 tmpMeta[2] = stringAppend(omc_ExpressionDump_printExpStr(threadData, _exp),_OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)));
4373#line 2409 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4374 fputs(MMC_STRINGDATA(tmpMeta[2])(((struct mmc_string*)((void*)((char*)(tmpMeta[2]) - 3)))->
data)
,stdoutstdout);
4375#line 4375 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4376 }
4377#line 2411 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4378 tmpMeta[0+0] = _exp;
4379#line 2411 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4380 tmpMeta[0+1] = _functions;
4381#line 4381 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4382 goto tmp3_done;
4383 }
4384 case 3: {
4385 modelica_boolean tmp21;
4386
4387 /* Pattern matching succeeded */
4388#line 2416 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4389 /* Pattern-matching assignment */
4390#line 2416 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4391 tmp21 = omc_Flags_isSet(threadData, _OMC_LIT20((void*)((char*)(&(_OMC_LIT_STRUCT20).header) + 3)));
4392#line 2416 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4393 if (1 != tmp21) goto goto_2;
4394#line 4394 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4395
4396#line 2417 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4397 tmpMeta[2] = stringAppend(_OMC_LIT72((void*)((char*)(&(_OMC_LIT_STRUCT72).header) + 3)),omc_ExpressionDump_printExpStr(threadData, _inExp));
4398#line 2417 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4399 tmpMeta[3] = stringAppend(tmpMeta[2],_OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)));
4400#line 2417 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4401 _str = tmpMeta[3];
4402#line 4402 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4403
4404#line 2418 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4405 omc_Debug_trace(threadData, _str);
4406#line 4406 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4407#line 2419 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4408 goto goto_2;
4409#line 4409 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4410 goto tmp3_done;
4411 }
4412 }
4413 goto tmp3_end;
4414 tmp3_end: ;
4415 }
4416 goto goto_2;
4417 tmp3_done:
4418 (void)tmp4;
4419 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
4420 goto tmp3_done2;
4421 goto_2:;
4422 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
4423 if (++tmp4 < 4) {
4424 goto tmp3_top;
4425 }
4426 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
4427 tmp3_done2:;
4428 }
4429 }
4430 _outDiffedExp = tmpMeta[0+0];
4431 _outFunctionTree = tmpMeta[0+1];
4432 _return: OMC_LABEL_UNUSED__attribute__((unused))
4433 if (out_outFunctionTree) { *out_outFunctionTree = _outFunctionTree; }
4434 return _outDiffedExp;
4435}
4436PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_differentiateFunctionCallPartial(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_metatype _maxIter, modelica_metatype *out_outFunctionTree)
4437{
4438 modelica_integer tmp1;
4439 modelica_metatype _outDiffedExp = NULL((void*)0);
4440 tmp1 = mmc_unbox_integer(_maxIter)(((mmc_sint_t) (_maxIter)) >> 1);
4441 _outDiffedExp = omc_Differentiate_differentiateFunctionCallPartial(threadData, _inExp, _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree, tmp1, out_outFunctionTree);
4442 /* skip box _outDiffedExp; DAE.Exp */
4443 /* skip box _outFunctionTree; DAE.AvlTreePathFunction.Tree */
4444 return _outDiffedExp;
4445}
4446
4447static modelica_metatype closure4_Differentiate_differentiateExp(threadData_t *thData, modelica_metatype closure, modelica_metatype inExp, modelica_metatype inDiffwrtCref, modelica_metatype inInputData, modelica_metatype inDiffType, modelica_metatype inFunctionTree, modelica_metatype tmp10)
4448{
4449 modelica_metatype maxIter = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),1))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (1)))))
;
4450 return boxptr_Differentiate_differentiateExp(thData, inExp, inDiffwrtCref, inInputData, inDiffType, inFunctionTree, maxIter, tmp10);
4451}static modelica_metatype closure5_Differentiate_differentiateExp(threadData_t *thData, modelica_metatype closure, modelica_metatype inExp, modelica_metatype inDiffwrtCref, modelica_metatype inInputData, modelica_metatype inDiffType, modelica_metatype inFunctionTree, modelica_metatype tmp16)
4452{
4453 modelica_metatype maxIter = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),1))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (1)))))
;
4454 return boxptr_Differentiate_differentiateExp(thData, inExp, inDiffwrtCref, inInputData, inDiffType, inFunctionTree, maxIter, tmp16);
4455}
4456PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiateFunctionCall(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_integer _maxIter, modelica_metatype *out_outFunctionTree)
4457{
4458 modelica_metatype _outDiffedExp = NULL((void*)0);
4459 modelica_metatype _outFunctionTree = NULL((void*)0);
4460 modelica_metatype tmpMeta[10] __attribute__((unused)) = {0};
4461 MMC_SO()mmc_check_stackoverflow(threadData);
4462 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4463 // _outDiffedExp has no default value.
4464 // _outFunctionTree has no default value.
4465#line 2107 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4466
4467#line 2107 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4468
4469#line 4469 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4470 { /* matchcontinue expression */
4471 volatile modelica_metatype tmp4_1;volatile modelica_metatype tmp4_2;
4472 tmp4_1 = _inExp;
4473 tmp4_2 = _inDiffType;
4474 {
4475 modelica_metatype _e = NULL((void*)0);
4476 modelica_metatype _de = NULL((void*)0);
4477 modelica_metatype _zero = NULL((void*)0);
4478 modelica_metatype _expl = NULL((void*)0);
4479 modelica_metatype _expl1 = NULL((void*)0);
4480 modelica_metatype _dexpl = NULL((void*)0);
4481 modelica_metatype _path = NULL((void*)0);
4482 modelica_metatype _dpath = NULL((void*)0);
4483 modelica_boolean _b;
4484 modelica_boolean _c;
4485 modelica_boolean _isImpure;
4486 modelica_metatype _dinl = NULL((void*)0);
4487 modelica_metatype _ty = NULL((void*)0);
4488 modelica_metatype _functions = NULL((void*)0);
4489 modelica_metatype _mapper = NULL((void*)0);
4490 modelica_metatype _tp = NULL((void*)0);
4491 modelica_metatype _dtp = NULL((void*)0);
4492 modelica_metatype _blst = NULL((void*)0);
4493 modelica_metatype _tlst = NULL((void*)0);
4494 modelica_string _typstring = NULL((void*)0);
4495 modelica_string _dastring = NULL((void*)0);
4496 modelica_string _str = NULL((void*)0);
4497 modelica_metatype _typlststring = NULL((void*)0);
4498 modelica_metatype _tc = NULL((void*)0);
4499 modelica_metatype _attr = NULL((void*)0);
4500 volatile mmc_switch_type tmp4;
4501 int tmp5;
4502 // _e has no default value.
4503 // _de has no default value.
4504 // _zero has no default value.
4505 // _expl has no default value.
4506 // _expl1 has no default value.
4507 // _dexpl has no default value.
4508 // _path has no default value.
4509 // _dpath has no default value.
4510 // _b has no default value.
4511 // _c has no default value.
4512 // _isImpure has no default value.
4513 // _dinl has no default value.
4514 // _ty has no default value.
4515 // _functions has no default value.
4516 // _mapper has no default value.
4517 // _tp has no default value.
4518 // _dtp has no default value.
4519 // _blst has no default value.
4520 // _tlst has no default value.
4521 // _typstring has no default value.
4522 // _dastring has no default value.
4523 // _str has no default value.
4524 // _typlststring has no default value.
4525 // _tc has no default value.
4526 // _attr has no default value.
4527 tmp4 = 0;
4528 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) {
4529 tmp3_top:
4530 threadData->mmc_jumper = &new_mmc_jumper;
4531 for (; tmp4 < 8; tmp4++) {
4532 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
4533 case 0: {
4534 if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,1,0)((*(mmc_uint_t*)((void*)((char*)(tmp4_2) - 3)))==(((0 +1) <<
10) + (((1 +3) & 255) << 2)))
== 0) goto tmp3_end;
4535
4536 tmp4 += 2; /* Pattern matching succeeded; we may skip some cases if we fail */
4537 /* Check guard condition after assignments */
4538 if (!(!omc_Expression_expHasCref(threadData, _inExp, _inDiffwrtCref))) goto tmp3_end;
4539#line 2145 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4540 _e = omc_Expression_makeZeroExpression(threadData, omc_Expression_arrayDimension(threadData, omc_ComponentReference_crefTypeFull(threadData, _inDiffwrtCref)), NULL((void*)0));
4541#line 4541 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4542#line 2146 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4543 tmpMeta[0+0] = _e;
4544#line 2146 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4545 tmpMeta[0+1] = _inFunctionTree;
4546#line 4546 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4547 goto tmp3_done;
4548 }
4549 case 1: {
4550 modelica_integer tmp6;
4551 modelica_integer tmp7;
4552 modelica_integer tmp8;
4553 modelica_boolean tmp9;
4554 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;
4555 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
4556 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
4557 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(4)))))
;
4558 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (2)))))
;
4559 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (3)))))
;
4560 tmp6 = mmc_unbox_integer(tmpMeta[6])(((mmc_sint_t) (tmpMeta[6])) >> 1);
4561 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (4)))))
;
4562 tmp7 = mmc_unbox_integer(tmpMeta[7])(((mmc_sint_t) (tmpMeta[7])) >> 1);
4563 tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (5)))))
;
4564 tmp8 = mmc_unbox_integer(tmpMeta[8])(((mmc_sint_t) (tmpMeta[8])) >> 1);
4565 tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 8))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (8)))))
;
4566 if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,0,0)((*(mmc_uint_t*)((void*)((char*)(tmp4_2) - 3)))==(((0 +1) <<
10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
4567 _path = tmpMeta[2];
4568 _expl = tmpMeta[3];
4569 _ty = tmpMeta[5];
4570 _b = tmp6 /* pattern as ty=Boolean */;
4571 _c = tmp7 /* pattern as ty=Boolean */;
4572 _isImpure = tmp8 /* pattern as ty=Boolean */;
4573 _tc = tmpMeta[9];
4574 /* Pattern matching succeeded */
4575#line 2152 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4576 _mapper = omc_Differentiate_getFunctionMapper(threadData, _path, _inFunctionTree ,&_tp);
4577#line 4577 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4578
4579#line 2153 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4580 tmpMeta[2] = mmc_mk_box4(0, _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree);
4581#line 2153 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4582 _dpath = omc_Differentiate_differentiateFunction1(threadData, _path, _mapper, _tp, _expl, tmpMeta[2] ,&_blst);
4583#line 4583 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4584
4585#line 2154 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4586 /* Pattern-matching assignment */
4587#line 2154 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4588 tmpMeta[2] = omc_DAE_AvlTreePathFunction_get(threadData, _inFunctionTree, _dpath);
4589#line 2154 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4590 if (optionNone(tmpMeta[2])(0==((((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))) &
(7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2])
- 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char*)
(tmpMeta[2]) - 3)))) >> 10)) ? 1 : 0)
) goto goto_2;
4591#line 2154 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4592 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (1)))))
;
4593#line 2154 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4594 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],0,9)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3)))==(((9 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto goto_2;
4595#line 2154 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4596 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (4)))))
;
4597#line 2154 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4598 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 8))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (8)))))
;
4599#line 2154 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4600 _dtp = tmpMeta[4];
4601#line 2154 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4602 _dinl = tmpMeta[5];
4603#line 4603 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4604
4605#line 2156 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4606 /* Pattern-matching tuple assignment */
4607#line 2156 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4608 tmp9 = omc_Differentiate_checkDerivativeFunctionInputs(threadData, _blst, _tp, _dtp, NULL((void*)0));
4609#line 2156 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4610 if (1 != tmp9) goto goto_2;
4611#line 4611 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4612
4613#line 2157 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4614 _expl1 = omc_List_splitOnBoolList(threadData, _expl, _blst, NULL((void*)0));
4615#line 4615 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4616
4617#line 2158 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4618 tmpMeta[2] = mmc_mk_box1(0, mmc_mk_integermmc_mk_icon(_maxIter));
4619#line 2158 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4620 _dexpl = omc_List_map3Fold(threadData, _expl1, (modelica_fnptr) mmc_mk_box2(0,closure4_Differentiate_differentiateExp,tmpMeta[2]), _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree ,&_outFunctionTree);
4621#line 4621 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4622
4623#line 2159 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4624 _expl1 = listAppend(_expl, _dexpl);
4625#line 4625 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4626#line 2160 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4627 tmpMeta[2] = mmc_mk_box8(3, &DAE_CallAttributes_CALL__ATTR__desc, _ty, mmc_mk_boolean(_b)((_b) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), mmc_mk_boolean(_c)((_c) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), mmc_mk_boolean(_isImpure)((_isImpure) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), mmc_mk_boolean(0)((0) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), _dinl, _tc);
4628#line 2160 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4629 tmpMeta[3] = mmc_mk_box4(16, &DAE_Exp_CALL__desc, _dpath, _expl1, tmpMeta[2]);
4630#line 2160 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4631 tmpMeta[0+0] = tmpMeta[3];
4632#line 2160 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4633 tmpMeta[0+1] = _outFunctionTree;
4634#line 4634 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4635 goto tmp3_done;
4636 }
4637 case 2: {
4638 modelica_boolean tmp11;
4639 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;
4640 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
4641 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
4642 if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,0,0)((*(mmc_uint_t*)((void*)((char*)(tmp4_2) - 3)))==(((0 +1) <<
10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
4643 _path = tmpMeta[2];
4644 _expl = tmpMeta[3];
4645 /* Pattern matching succeeded */
4646#line 2167 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4647 _mapper = omc_Differentiate_getFunctionMapper(threadData, _path, _inFunctionTree ,&_tp);
4648#line 4648 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4649
4650#line 2168 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4651 tmpMeta[2] = mmc_mk_box4(0, _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree);
4652#line 2168 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4653 _dpath = omc_Differentiate_differentiateFunction1(threadData, _path, _mapper, _tp, _expl, tmpMeta[2] ,&_blst);
4654#line 4654 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4655
4656#line 2169 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4657 /* Pattern-matching assignment */
4658#line 2169 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4659 tmpMeta[2] = omc_DAE_AvlTreePathFunction_get(threadData, _inFunctionTree, _dpath);
4660#line 2169 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4661 if (optionNone(tmpMeta[2])(0==((((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))) &
(7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2])
- 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char*)
(tmpMeta[2]) - 3)))) >> 10)) ? 1 : 0)
) goto goto_2;
4662#line 2169 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4663 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (1)))))
;
4664#line 2169 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4665 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],0,9)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3)))==(((9 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto goto_2;
4666#line 2169 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4667 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (4)))))
;
4668#line 2169 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4669 _dtp = tmpMeta[4];
4670#line 4670 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4671
4672#line 2171 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4673 /* Pattern-matching tuple assignment */
4674#line 2171 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4675 tmp11 = omc_Differentiate_checkDerivativeFunctionInputs(threadData, _blst, _tp, _dtp, &tmpMeta[2]);
4676#line 2171 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4677 if (0 != tmp11) goto goto_2;
4678#line 2171 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4679 _tlst = tmpMeta[2];
4680#line 4680 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4681
4682#line 2173 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4683 _typlststring = omc_List_map(threadData, _tlst, boxvar_Types_unparseType((void*)((char*)(&(boxvar_lit_Types_unparseType).header) +
3))
);
4684#line 4684 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4685
4686#line 2174 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4687 tmpMeta[2] = stringAppend(_OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)),stringDelimitList(_typlststring, _OMC_LIT57((void*)((char*)(&(_OMC_LIT_STRUCT57).header) + 3))));
4688#line 2174 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4689 _typstring = tmpMeta[2];
4690#line 4690 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4691
4692#line 2175 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4693 _dastring = omc_AbsynUtil_pathString(threadData, _dpath, _OMC_LIT23((void*)((char*)(&(_OMC_LIT_STRUCT23).header) + 3)), 1, 0);
4694#line 4694 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4695
4696#line 2176 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4697 fputs(MMC_STRINGDATA(_OMC_LIT58)(((struct mmc_string*)((void*)((char*)(((void*)((char*)(&
(_OMC_LIT_STRUCT58).header) + 3))) - 3)))->data)
,stdoutstdout);
4698#line 4698 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4699
4700#line 2177 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4701 tmpMeta[2] = mmc_mk_cons(_dastring, mmc_mk_cons(_typstring, MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))));
4702#line 2177 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4703 omc_Error_addMessage(threadData, _OMC_LIT62((void*)((char*)(&(_OMC_LIT_STRUCT62).header) + 3)), tmpMeta[2]);
4704#line 4704 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4705#line 2178 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4706 goto goto_2;
4707#line 4707 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4708 goto tmp3_done;
4709 }
4710 case 3: {
4711 modelica_integer tmp12;
4712 modelica_boolean tmp13;
4713 modelica_boolean tmp15;
4714 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;
4715 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(4)))))
;
4716 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (4)))))
;
4717 tmp12 = mmc_unbox_integer(tmpMeta[3])(((mmc_sint_t) (tmpMeta[3])) >> 1);
4718 if (0 != tmp12) goto tmp3_end;
4719
4720 /* Pattern matching succeeded */
4721#line 2184 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4722 tmp13 = 0; /* begin failure */
4723#line 2184 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4724 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) {
4725#line 2184 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4726 /* Pattern-matching assignment */
4727#line 2184 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4728 tmpMeta[2] = _inDiffType;
4729#line 2184 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4730 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],3,0)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))==(((0 +1)
<< 10) + (((3 +3) & 255) << 2)))
== 0) goto goto_14;
4731#line 4731 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4732 tmp13 = 1;
4733 goto goto_14;
4734 goto_14:;
4735 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
4736 if (tmp13) {goto goto_2;} /* end failure */
4737
4738#line 2185 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4739 /* Pattern-matching tuple assignment */
4740#line 2185 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4741 tmpMeta[2] = mmc_mk_box2(0, mmc_mk_some(_inFunctionTree), _OMC_LIT76((void*)((char*)(&(_OMC_LIT_STRUCT76).header) + 3)));
4742#line 2185 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4743 tmpMeta[3] = omc_Inline_forceInlineExp(threadData, _inExp, tmpMeta[2], _OMC_LIT44((void*)((char*)(&(_OMC_LIT_STRUCT44).header) + 3)), NULL((void*)0), &tmp15);
4744#line 2185 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4745 _e = tmpMeta[3];
4746#line 2185 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4747 if (1 != tmp15) goto goto_2;
4748#line 4748 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4749#line 2186 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4750 tmpMeta[0+0] = omc_Differentiate_differentiateExp(threadData, _e, _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree, _maxIter, &tmpMeta[0+1]);
4751#line 4751 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4752 goto tmp3_done;
4753 }
4754 case 4: {
4755 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;
4756 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
4757 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
4758 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(4)))))
;
4759
4760 _e = tmp4_1;
4761 _path = tmpMeta[2];
4762 _expl = tmpMeta[3];
4763 _attr = tmpMeta[4];
4764 /* Pattern matching succeeded */
4765 /* Check guard condition after assignments */
4766 if (!omc_Expression_isRecordCall(threadData, _e, _inFunctionTree)) goto tmp3_end;
4767#line 2193 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4768 tmpMeta[2] = mmc_mk_box1(0, mmc_mk_integermmc_mk_icon(_maxIter));
4769#line 2193 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4770 _dexpl = omc_List_map3Fold(threadData, _expl, (modelica_fnptr) mmc_mk_box2(0,closure5_Differentiate_differentiateExp,tmpMeta[2]), _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree ,&_functions);
4771#line 4771 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4772#line 2194 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4773 tmpMeta[2] = mmc_mk_box4(16, &DAE_Exp_CALL__desc, _path, _dexpl, _attr);
4774#line 2194 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4775 tmpMeta[0+0] = tmpMeta[2];
4776#line 2194 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4777 tmpMeta[0+1] = _functions;
4778#line 4778 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4779 goto tmp3_done;
4780 }
4781 case 5: {
4782
4783 _e = tmp4_1;
4784 /* Pattern matching succeeded */
4785#line 2200 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4786 if(omc_Flags_isSet(threadData, _OMC_LIT56((void*)((char*)(&(_OMC_LIT_STRUCT56).header) + 3))))
4787#line 2200 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4788 {
4789#line 2201 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4790 tmpMeta[2] = stringAppend(_OMC_LIT78((void*)((char*)(&(_OMC_LIT_STRUCT78).header) + 3)),omc_ComponentReference_crefStr(threadData, _inDiffwrtCref));
4791#line 2201 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4792 tmpMeta[3] = stringAppend(tmpMeta[2],_OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)));
4793#line 2201 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4794 omc_BackendDump_debugStrExpStr(threadData, _OMC_LIT77((void*)((char*)(&(_OMC_LIT_STRUCT77).header) + 3)), _e, tmpMeta[3]);
4795#line 4795 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4796 }
4797
4798#line 2203 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4799 _de = omc_Differentiate_differentiateFunctionCallPartial(threadData, _e, _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree, _maxIter ,&_functions);
4800#line 4800 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4801
4802#line 2204 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4803 tmpMeta[2] = mmc_mk_box2(0, mmc_mk_some(_functions), _OMC_LIT76((void*)((char*)(&(_OMC_LIT_STRUCT76).header) + 3)));
4804#line 2204 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4805 _e = omc_Inline_forceInlineExp(threadData, _de, tmpMeta[2], _OMC_LIT44((void*)((char*)(&(_OMC_LIT_STRUCT44).header) + 3)) ,NULL((void*)0) ,&_b);
4806#line 4806 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4807
4808#line 2205 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4809 if(_b)
4810#line 2205 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4811 {
4812#line 2206 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4813 _de = _e;
4814#line 4814 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4815 }
4816
4817#line 2209 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4818 if(omc_Flags_isSet(threadData, _OMC_LIT56((void*)((char*)(&(_OMC_LIT_STRUCT56).header) + 3))))
4819#line 2209 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4820 {
4821#line 2210 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4822 tmpMeta[2] = stringAppend(_OMC_LIT78((void*)((char*)(&(_OMC_LIT_STRUCT78).header) + 3)),omc_ComponentReference_crefStr(threadData, _inDiffwrtCref));
4823#line 2210 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4824 tmpMeta[3] = stringAppend(tmpMeta[2],_OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)));
4825#line 2210 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4826 omc_BackendDump_debugStrExpStr(threadData, _OMC_LIT79((void*)((char*)(&(_OMC_LIT_STRUCT79).header) + 3)), _de, tmpMeta[3]);
4827#line 4827 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4828 }
4829#line 2212 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4830 tmpMeta[0+0] = _de;
4831#line 2212 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4832 tmpMeta[0+1] = _functions;
4833#line 4833 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4834 goto tmp3_done;
4835 }
4836 case 6: {
4837 modelica_boolean tmp17;
4838
4839 /* Pattern matching succeeded */
4840#line 2223 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4841 /* Pattern-matching assignment */
4842#line 2223 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4843 tmp17 = omc_Expression_expContains(threadData, _inExp, omc_Expression_crefExp(threadData, _inDiffwrtCref));
4844#line 2223 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4845 if (0 != tmp17) goto goto_2;
4846#line 4846 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4847
4848#line 2228 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4849 _tp = omc_Expression_typeof(threadData, _inExp);
4850#line 4850 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4851
4852#line 2229 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4853 _zero = omc_Expression_createZeroExpression(threadData, _tp);
4854#line 4854 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4855#line 2230 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4856 tmpMeta[0+0] = _zero;
4857#line 2230 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4858 tmpMeta[0+1] = _inFunctionTree;
4859#line 4859 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4860 goto tmp3_done;
4861 }
4862 case 7: {
4863 modelica_boolean tmp18;
4864
4865 /* Pattern matching succeeded */
4866#line 2234 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4867 /* Pattern-matching assignment */
4868#line 2234 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4869 tmp18 = omc_Flags_isSet(threadData, _OMC_LIT20((void*)((char*)(&(_OMC_LIT_STRUCT20).header) + 3)));
4870#line 2234 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4871 if (1 != tmp18) goto goto_2;
4872#line 4872 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4873
4874#line 2235 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4875 tmpMeta[2] = stringAppend(_OMC_LIT80((void*)((char*)(&(_OMC_LIT_STRUCT80).header) + 3)),omc_ExpressionDump_printExpStr(threadData, _inExp));
4876#line 2235 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4877 tmpMeta[3] = stringAppend(tmpMeta[2],_OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)));
4878#line 2235 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4879 _str = tmpMeta[3];
4880#line 4880 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4881
4882#line 2236 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4883 omc_Debug_trace(threadData, _str);
4884#line 4884 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4885#line 2237 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4886 goto goto_2;
4887#line 4887 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4888 goto tmp3_done;
4889 }
4890 }
4891 goto tmp3_end;
4892 tmp3_end: ;
4893 }
4894 goto goto_2;
4895 tmp3_done:
4896 (void)tmp4;
4897 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
4898 goto tmp3_done2;
4899 goto_2:;
4900 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
4901 if (++tmp4 < 8) {
4902 goto tmp3_top;
4903 }
4904 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
4905 tmp3_done2:;
4906 }
4907 }
4908 _outDiffedExp = tmpMeta[0+0];
4909 _outFunctionTree = tmpMeta[0+1];
4910 _return: OMC_LABEL_UNUSED__attribute__((unused))
4911 if (out_outFunctionTree) { *out_outFunctionTree = _outFunctionTree; }
4912 return _outDiffedExp;
4913}
4914PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Differentiate_differentiateFunctionCall(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_metatype _maxIter, modelica_metatype *out_outFunctionTree)
4915{
4916 modelica_integer tmp1;
4917 modelica_metatype _outDiffedExp = NULL((void*)0);
4918 tmp1 = mmc_unbox_integer(_maxIter)(((mmc_sint_t) (_maxIter)) >> 1);
4919 _outDiffedExp = omc_Differentiate_differentiateFunctionCall(threadData, _inExp, _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree, tmp1, out_outFunctionTree);
4920 /* skip box _outDiffedExp; DAE.Exp */
4921 /* skip box _outFunctionTree; DAE.AvlTreePathFunction.Tree */
4922 return _outDiffedExp;
4923}
4924
4925PROTECTED_FUNCTION_STATIC modelica_metatype omc_Differentiate_differentiateBinary(threadData_t *threadData, modelica_metatype _inExp, modelica_metatype _inDiffwrtCref, modelica_metatype _inInputData, modelica_metatype _inDiffType, modelica_metatype _inFunctionTree, modelica_integer _maxIter, modelica_metatype *out_outFunctionTree)
4926{
4927 modelica_metatype _outDiffedExp = NULL((void*)0);
4928 modelica_metatype _outFunctionTree = NULL((void*)0);
4929 modelica_metatype tmpMeta[19] __attribute__((unused)) = {0};
4930 MMC_SO()mmc_check_stackoverflow(threadData);
4931 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4932 // _outDiffedExp has no default value.
4933 // _outFunctionTree has no default value.
4934#line 1868 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4935
4936#line 1868 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4937
4938#line 4938 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4939 { /* match expression */
4940 modelica_metatype tmp4_1;
4941 tmp4_1 = _inExp;
4942 {
4943 modelica_metatype _e = NULL((void*)0);
4944 modelica_metatype _e0 = NULL((void*)0);
4945 modelica_metatype _e1 = NULL((void*)0);
4946 modelica_metatype _e2 = NULL((void*)0);
4947 modelica_metatype _zero = NULL((void*)0);
4948 modelica_metatype _etmp = NULL((void*)0);
4949 modelica_metatype _de1 = NULL((void*)0);
4950 modelica_metatype _de2 = NULL((void*)0);
4951 modelica_metatype _funcs = NULL((void*)0);
4952 modelica_metatype _tp = NULL((void*)0);
4953 modelica_metatype _tp1 = NULL((void*)0);
4954 modelica_integer _i;
4955 modelica_real _r;
4956 modelica_string _s1 = NULL((void*)0);
4957 modelica_string _s2 = NULL((void*)0);
4958 modelica_string _serr = NULL((void*)0);
4959 volatile mmc_switch_type tmp4;
4960 int tmp5;
4961 // _e has no default value.
4962 // _e0 has no default value.
4963 // _e1 has no default value.
4964 // _e2 has no default value.
4965 // _zero has no default value.
4966 // _etmp has no default value.
4967 // _de1 has no default value.
4968 // _de2 has no default value.
4969 // _funcs has no default value.
4970 // _tp has no default value.
4971 // _tp1 has no default value.
4972 // _i has no default value.
4973 // _r has no default value.
4974 // _s1 has no default value.
4975 // _s2 has no default value.
4976 // _serr has no default value.
4977 tmp4 = 0;
4978 for (; tmp4 < 21; tmp4++) {
4979 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
4980 case 0: {
4981 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;
4982 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
4983 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
4984 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],0,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3)))==(((1 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
4985 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (2)))))
;
4986 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(4)))))
;
4987 _e1 = tmpMeta[2];
4988 _tp = tmpMeta[4];
4989 _e2 = tmpMeta[5];
4990 /* Pattern matching succeeded */
4991#line 1900 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4992 _de1 = omc_Differentiate_differentiateExp(threadData, _e1, _inDiffwrtCref, _inInputData, _inDiffType, _inFunctionTree, _maxIter ,&_funcs);
4993#line 4993 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4994
4995#line 1901 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4996 _de2 = omc_Differentiate_differentiateExp(threadData, _e2, _inDiffwrtCref, _inInputData, _inDiffType, _funcs, _maxIter ,&_funcs);
4997#line 4997 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
4998#line 1902 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
4999 tmpMeta[2] = mmc_mk_box2(3, &DAE_Operator_ADD__desc, _tp);
5000#line 1902 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
5001 tmpMeta[3] = mmc_mk_box4(10, &DAE_Exp_BINARY__desc, _de1, tmpMeta[2], _de2);
5002#line 1902 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
5003 tmpMeta[0+0] = tmpMeta[3];
5004#line 1902 "/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/BackEnd/Differentiate.mo"
5005 tmpMeta[0+1] = _funcs;
5006#line 5006 OMC_FILE"/var/lib/jenkins1/ws/ins.slow_JKRT-OMSens-minor-fixes/OMCompiler/Compiler/boot/build/tmp/Differentiate.c"
5007 goto tmp3_done;
5008 }
5009 case 1: {
5010 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;
5011 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
5012 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3