Changeset 14175


Ignore:
Timestamp:
Nov 26, 2019 9:23:53 AM (2 weeks ago)
Author:
Christian Andersson
Message:

Updated C-code generation for for loops (new approach), ticket:5882

Location:
branches/dev-cw-2719/Compiler
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • branches/dev-cw-2719/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen/CCodeGenAlgorithms.jrag

    r14143 r14175  
    298298    @Override
    299299    public void FForStmt.prettyPrint_C(CodePrinter p, CodeStream str, String indent) {
     300        this.myCodeGenContext().incrementForLoopDepth();
    300301        p.printPreSteps(getIndex(), str, indent);
    301302        getIndex().printForIndexInit_C(p, str, indent);
     
    309310        str.print("}\n");
    310311        p.printPostSteps(getIndex(), str, indent);
     312        this.myCodeGenContext().decrementForLoopDepth();
    311313    }
    312314
     
    316318        String name = getFVariable().name_C();
    317319        str.format("%sjmi_real_t %s;\n", indent, name);
    318         getFExp().genForIndexExtraVarDecls_C(p, str, indent, name);
    319     }
    320 
    321     public void FExp.genForIndexExtraVarDecls_C(CodePrinter p, CodeStream str, String indent, String name) {
    322     }
    323 
    324     @Override
    325     public void FRangeExp.genForIndexExtraVarDecls_C(CodePrinter p, CodeStream str, String indent, String name) {
    326         if (hasStep()) {
    327             str.print(indent, "jmi_int_t ", name, "n;\n");
    328         }
    329     }
    330 
    331     @Override
    332     public void FAccessExp.genForIndexExtraVarDecls_C(CodePrinter p, CodeStream str, String indent, String name) {
    333         str.format("%sint %si;\n", indent, name);
    334320    }
    335321
     
    342328    @Override
    343329    public void FRangeExp.printForIndexInit_C(CodePrinter p, CodeStream str, String indent, String name) {
    344         if (hasStep()) {
    345             str.print(indent, name, "n = 0;\n");
    346         }
     330        String nameEAccess = "jmi_array_val_1(" + C_LOOP_INDEX + "_i1, " + this.myCodeGenContext().getForLoopDepth() + ")";
     331        String nameERef = "jmi_array_ref_1(" + C_LOOP_INDEX + "_i1, " + this.myCodeGenContext().getForLoopDepth() + ")";
     332        String nameNAccess = "jmi_array_val_1(" + C_LOOP_INDEX + "_i2, " + this.myCodeGenContext().getForLoopDepth() + ")";
     333        String nameNRef = "jmi_array_ref_1(" + C_LOOP_INDEX + "_i2, " + this.myCodeGenContext().getForLoopDepth() + ")";
     334        boolean hasStep = hasStep();
     335        FExp start = getFExp(0);
     336        FExp end = getFExp(hasStep ? 2 : 1);
     337        FExp step = hasStep ? getFExp(1) : null;
     338       
     339        str.print(indent, nameNRef, " = 0;\n");
     340        str.print(indent, nameERef, " = floor(");
     341        if (hasStep) {
     342            str.print("(");
     343        }
     344
     345        str.print("(");
     346        p.print(end, str, indent);
     347        str.print(") - (");
     348        p.print(start, str, indent);
     349        str.print(")");
     350
     351        if (hasStep) {
     352            str.print(") / (");
     353            p.print(step, str, indent);
     354            str.print(")");
     355        }
     356
     357        str.print(");\n");
    347358    }
    348359
     
    367378    @Override
    368379    public void FAccessExp.printForIndex_C(CodePrinter p, CodeStream str, String indent, String name) {
    369         str.format("%1$si = 0; %1$si < jmi_array_size(%2$s, 0); %1$si++",
    370                 name, getFAccess().toString_C(p));
     380        String nameEAccess = "jmi_array_val_1(" + C_LOOP_INDEX + "_i1, " + this.myCodeGenContext().getForLoopDepth() + ")";
     381        String nameERef    = "jmi_array_ref_1(" + C_LOOP_INDEX + "_i1, " + this.myCodeGenContext().getForLoopDepth() + ")";
     382        str.format("%1$s = 0; %2$s < jmi_array_size(%3$s, 0); (%1$s)++",
     383                nameERef, nameEAccess, getFAccess().toString_C(p));
    371384    }
    372385
    373386    @Override
    374387    public void FRangeExp.printForIndex_C(CodePrinter p, CodeStream str, String indent, String name) {
    375         boolean hasStep = hasStep();
    376388        FExp start = getFExp(0);
    377         FExp end = getFExp(hasStep ? 2 : 1);
    378         FExp step = hasStep ? getFExp(1) : null;
    379 
    380         String nameN = name + "n";
    381 
     389        FExp step = getFExp(1);
     390
     391        String nameEAccess = "jmi_array_val_1(" + C_LOOP_INDEX + "_i1, " + this.myCodeGenContext().getForLoopDepth() + ")";
     392        String nameNAccess = "jmi_array_val_1(" + C_LOOP_INDEX + "_i2, " + this.myCodeGenContext().getForLoopDepth() + ")";
     393        String nameNRef    = "jmi_array_ref_1(" + C_LOOP_INDEX + "_i2, " + this.myCodeGenContext().getForLoopDepth() + ")";
     394       
    382395        /*
    383396         * Initial expression.
     
    387400        str.print("; ");
    388401
    389          /*
     402        /*
    390403         * Conditional expression.
    391404         */
    392         if (hasStep) {
    393             str.print(nameN, " <= ");
    394         } else {
    395             str.print(name, " - (", start, ") <= ");
    396         }
    397        
    398         str.print("floor(");
    399         if (hasStep) {
    400             str.print("(");
    401         }
    402  
    403         str.print("(");
    404         p.print(end, str, indent);
    405         str.print(") - (");
    406         p.print(start, str, indent);
    407         str.print(")");
    408 
    409         if (hasStep) {
    410             str.print(") / (");
    411             p.print(step, str, indent);
    412             str.print(")");
    413         }
    414 
    415         str.print("); ");
     405        str.print(nameNAccess, " <= ", nameEAccess, "; ");
    416406
    417407        /*
     
    419409         */
    420410        str.print(name, " = ");
     411        p.print(start, str, indent);
     412        str.print(" + ");
    421413        if (hasStep()) {
    422             p.print(start, str, indent);
    423             str.print(" + ");
    424414            str.print("(");
    425415            p.print(step, str, indent);
    426416            str.print(") * ");
    427             str.print("(++", nameN, ")");
    428         } else {
    429             str.print(name, " + 1 ");
    430         }
     417        }
     418        str.print("(++(", nameNRef, "))");
    431419    }
    432420
     
    440428    @Override
    441429    public void FAccessExp.printForIndexNext_C(CodePrinter p, CodeStream str, String indent, String name) {
    442         str.format("%1$s%2$s = jmi_array_val_1(%3$s, %2$si);\n",
    443                 indent, name, getFAccess().toString_C(p));
     430        String nameEAccess = "jmi_array_val_1(" + C_LOOP_INDEX + "_i1, " + this.myCodeGenContext().getForLoopDepth() + ")";
     431        str.format("%1$s%2$s = jmi_array_val_1(%3$s, %4$s);\n",
     432                indent, name, getFAccess().toString_C(p), nameEAccess);
    444433    }
    445434
  • branches/dev-cw-2719/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen/CCodeGenFunction.jrag

    r12024 r14175  
    231231        }
    232232    }
     233   
     234    public static final String ASTNode.C_LOOP_INDEX     = "_for_loop_variables";
     235   
     236    public void FFunctionDecl.genArrayForVarDecl_C(CodePrinter p, CodeStream str, String indent, FType type, String suffix, int maxForLoopDepth) {
     237        str.print(indent, "JMI_ARR(STACK, ",
     238                type.nameScalarExt_C(p), ", ",
     239                type.nameArrayExt_C(p), ", ",
     240                this.C_LOOP_INDEX, suffix, ", 1, ", maxForLoopDepth);
     241       str.println(")");
     242    }
     243   
     244    public void FFunctionDecl.genForVarDecls_C(CodePrinter p, CodeStream str, String indent) {
     245        int maxForLoopDepth = maxForLoopDepth();
     246        FIntegerType intType = new FIntegerType();
     247        FRealType realType   = new FRealType();
     248        if (maxForLoopDepth > 0) {
     249            //genArrayForVarDecl_C(p, str, indent, realType, "i", maxForLoopDepth);
     250            genArrayForVarDecl_C(p, str, indent, intType, "_i1", maxForLoopDepth);
     251            genArrayForVarDecl_C(p, str, indent, intType, "_i2", maxForLoopDepth);
     252        }
     253    }
    233254
    234255    public void FFunctionDecl.genFunctionBodyAlgorithm(CodePrinter p, CodeStream str, String indent) {
     
    239260            }
    240261        }
     262        genForVarDecls_C(p, str, indent);
    241263        p.print(getFAlgorithm(), str, indent);
    242264    }
  • branches/dev-cw-2719/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen/CCodeGenNames.jrag

    r11676 r14175  
    5151    eq FFunctionDecl.getChild().myCodeGenContext() = codeGenContext;
    5252    eq FExternalStmt.getChild().myCodeGenContext() = getCodeGenContext();
     53   
     54    syn int ASTNode.maxForLoopDepth() {
     55        int max = 0;
     56        for (ASTNode child : this) {
     57            int count = child.maxForLoopDepth();
     58                if (count > max) {
     59                max = count;
     60            }
     61        }
     62        return max;
     63    }
     64    eq FForStmt.maxForLoopDepth() = 1 + super.maxForLoopDepth();
    5365
    5466    private CodeGenContext FClass.codeGenContext = new CodeGenContext();
     
    6072    public class CodeGenContext {
    6173        private int nextTempNbr_C = 1;
     74        public int currentForLoopDepth = 0;
    6275        private Map<String,String> recordChildTempNames = new HashMap<>();
     76       
     77        public void incrementForLoopDepth() {
     78            currentForLoopDepth++;
     79        }
     80       
     81        public int getForLoopDepth() {
     82            return currentForLoopDepth;
     83        }
     84       
     85        public void decrementForLoopDepth() {
     86            currentForLoopDepth--;
     87        }
    6388       
    6489        public String nextTempName_C() {
  • branches/dev-cw-2719/Compiler/ModelicaCBackEnd/test/modelica/CCodeGenAlgorithmTests.mo

    r14143 r14175  
    966966    JMI_ARR(STACK, jmi_real_t, jmi_array_t, temp_1_a, 2, 1)
    967967    jmi_real_t i1_0i;
     968    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     969    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    968970    if (o_a == NULL) {
    969971        JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, o_an, 2, 1, 2)
     
    973975    jmi_array_ref_1(temp_1_a, 1) = 1;
    974976    jmi_array_ref_1(temp_1_a, 2) = 1;
    975     for (i1_0i = 1; i1_0i - (1) <= floor((2) - (1)); i1_0i = i1_0i + 1 ) {
     977    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     978    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     979    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    976980        jmi_array_ref_1(o_a, i1_0i) = jmi_array_val_1(temp_1_a, i1_0i);
    977981    }
     
    9981002        r_v = r_vn;
    9991003    }
     1004    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     1005    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    10001006    JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, temp_1_a, 2, 1, 2)
    10011007    func_CCodeGenAlgorithmTests_Algorithm9_f_def0(temp_1_a);
    1002     for (i1_1i = 1; i1_1i - (1) <= floor((2) - (1)); i1_1i = i1_1i + 1 ) {
     1008    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     1009    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     1010    for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    10031011        jmi_array_ref_1(r_v->a, i1_1i) = 2 * jmi_array_val_1(temp_1_a, i1_1i);
    10041012    }
    10051013    JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, temp_2_a, 2, 1, 2)
    10061014    func_CCodeGenAlgorithmTests_Algorithm9_f_def0(temp_2_a);
    1007     for (i1_2i = 1; i1_2i - (1) <= floor((2) - (1)); i1_2i = i1_2i + 1 ) {
     1015    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     1016    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     1017    for (i1_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    10081018        jmi_array_ref_1(r_v->a, 2 + (i1_2i - 1)) = jmi_array_val_1(temp_2_a, i1_2i);
    10091019    }
    1010     for (i1_3i = 1; i1_3i - (1) <= floor((3) - (1)); i1_3i = i1_3i + 1 ) {
     1020    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     1021    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     1022    for (i1_3i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_3i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    10111023        jmi_array_ref_1(r__v->a, i1_3i) = jmi_array_val_1(r_v->a, i1_3i);
    10121024    }
     
    11021114    jmi_real_t i1_1i;
    11031115    jmi_real_t i1_2i;
     1116    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     1117    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    11041118    if (o_a == NULL) {
    11051119        JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, o_an, 5, 1, 5)
     
    11151129    jmi_array_ref_1(temp_2_a, 2) = 1;
    11161130    jmi_array_ref_1(temp_2_a, 3) = 1;
    1117     for (i1_0i = 1; i1_0i - (1) <= floor((3) - (1)); i1_0i = i1_0i + 1 ) {
     1131    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     1132    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     1133    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    11181134        jmi_array_ref_1(o_a, jmi_array_ref_1(temp_1_a, i1_0i)) = jmi_array_val_1(temp_2_a, i1_0i);
    11191135    }
     
    11221138    jmi_array_ref_1(temp_4_a, 2) = 5;
    11231139    JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, temp_3_a, 2, 1, 2)
    1124     for (i1_1i = 1; i1_1i - (1) <= floor((2) - (1)); i1_1i = i1_1i + 1 ) {
     1140    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     1141    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     1142    for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    11251143        jmi_array_ref_1(temp_3_a, i1_1i) = jmi_array_val_1(o_a, jmi_array_val_1(temp_4_a, i1_1i));
    11261144    }
     
    11301148    jmi_array_ref_1(temp_6_a, 1) = 2;
    11311149    jmi_array_ref_1(temp_6_a, 2) = 4;
    1132     for (i1_2i = 1; i1_2i - (1) <= floor((2) - (1)); i1_2i = i1_2i + 1 ) {
     1150    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     1151    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     1152    for (i1_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    11331153        jmi_array_ref_1(o_a, jmi_array_ref_1(temp_6_a, i1_2i)) = jmi_array_val_1(temp_5_a, i1_2i);
    11341154    }
     
    11431163    JMI_DEF(REA, dummy_v)
    11441164    jmi_real_t i1_3i;
     1165    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     1166    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    11451167    if (o_a == NULL) {
    11461168        JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, o_an, 2, 1, 2)
     
    11481170    }
    11491171    dummy_v = 1;
    1150     for (i1_3i = 1; i1_3i - (1) <= floor((2) - (1)); i1_3i = i1_3i + 1 ) {
     1172    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     1173    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     1174    for (i1_3i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_3i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    11511175        jmi_array_ref_1(o_a, i1_3i) = jmi_array_val_1(i_a, i1_3i);
    11521176    }
  • branches/dev-cw-2719/Compiler/ModelicaCBackEnd/test/modelica/CCodeGenArrayTests.mo

    r14143 r14175  
    4040    JMI_DEF(REA, temp_2_v)
    4141    jmi_real_t i1_0i;
     42    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     43    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    4244    temp_2_v = 0.0;
    43     for (i1_0i = 1; i1_0i - (1) <= floor((jmi_array_size(x_a, 0)) - (1)); i1_0i = i1_0i + 1 ) {
     45    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     46    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(x_a, 0)) - (1));
     47    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    4448        temp_2_v = temp_2_v + jmi_array_val_1(x_a, i1_0i) * jmi_array_val_1(x_a, i1_0i);
    4549    }
     
    252256    JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, tmp_1, 3, 1, 3)
    253257    r_v->x = tmp_1;
     258    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     259    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    254260    y_v = x_v;
    255261    r_v->n = 3;
    256     for (i1_0i = 1; i1_0i - (1) <= floor((3) - (1)); i1_0i = i1_0i + 1 ) {
     262    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     263    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     264    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    257265        jmi_array_ref_1(r_v->x, i1_0i) = i1_0i;
    258266    }
     
    792800    jmi_real_t i_0i;
    793801    jmi_real_t i1_1i;
    794     for (i_0i = 1; i_0i - (1) <= floor((jmi_array_size(r_a, 0)) - (1)); i_0i = i_0i + 1 ) {
     802    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     803    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
     804    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     805    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(r_a, 0)) - (1));
     806    for (i_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    795807        temp_1_v = 0.0;
    796         for (i1_1i = 1; i1_1i - (1) <= floor((jmi_array_size(jmi_array_rec_1(r_a, i_0i)->x, 0)) - (1)); i1_1i = i1_1i + 1 ) {
     808        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     809        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((jmi_array_size(jmi_array_rec_1(r_a, i_0i)->x, 0)) - (1));
     810        for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    797811            temp_1_v = temp_1_v + jmi_array_val_1(jmi_array_rec_1(r_a, i_0i)->x, i1_1i);
    798812        }
     
    959973    jmi_real_t i1_1i;
    960974    jmi_real_t i1_2i;
     975    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     976    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    961977    JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, xs_a, n_v, 1, n_v)
    962978    JMI_ARRAY_INIT_1(HEAP, R_0_r, R_0_ra, rs_a, n_v, 1, n_v)
     
    964980    for (tmp_1 = 1; tmp_1 < tmp_1_max; tmp_1++) {
    965981    }
    966     for (i1_0i = 1; i1_0i - (1) <= floor((n_v) - (1)); i1_0i = i1_0i + 1 ) {
     982    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     983    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((n_v) - (1));
     984    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    967985        jmi_array_rec_1(rs_a, i1_0i)->x = 1;
    968986    }
    969     for (i1_1i = 1; i1_1i - (1) <= floor((n_v) - (1)); i1_1i = i1_1i + 1 ) {
     987    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     988    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((n_v) - (1));
     989    for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    970990        jmi_array_ref_1(xs_a, i1_1i) = jmi_array_rec_1(rs_a, i1_1i)->x;
    971991    }
    972992    temp_1_v = 0.0;
    973     for (i1_2i = 1; i1_2i - (1) <= floor((n_v) - (1)); i1_2i = i1_2i + 1 ) {
     993    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     994    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((n_v) - (1));
     995    for (i1_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    974996        temp_1_v = temp_1_v + jmi_array_val_1(xs_a, i1_2i);
    975997    }
  • branches/dev-cw-2719/Compiler/ModelicaCBackEnd/test/modelica/CCodeGenCompositeStatementTests.mo

    r14143 r14175  
    4343    JMI_ARR(STACK, R_0_r, R_0_ra, temp_1_a, 2, 1)
    4444    jmi_real_t i1_0i;
     45    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     46    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    4547    if (y_a == NULL) {
    4648        JMI_ARRAY_INIT_1(STACK, R_0_r, R_0_ra, y_an, 2, 1, 2)
     
    5052    *jmi_array_rec_1(temp_1_a, 1) = *JMI_GLOBAL(CCodeGenCompositeStatementTests_RecordStmt1_f_c);
    5153    *jmi_array_rec_1(temp_1_a, 2) = *r_v;
    52     for (i1_0i = 1; i1_0i - (1) <= floor((2) - (1)); i1_0i = i1_0i + 1 ) {
     54    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     55    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     56    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    5357        jmi_array_rec_1(y_a, i1_0i)->x = jmi_array_rec_1(temp_1_a, i1_0i)->x;
    5458    }
     
    8892    jmi_real_t i1_0i;
    8993    jmi_real_t i2_1i;
     94    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     95    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
    9096    if (y_a == NULL) {
    9197        JMI_ARRAY_INIT_1(STACK, R_0_r, R_0_ra, y_an, 2, 1, 2)
     
    99105    *jmi_array_rec_1(temp_1_a, 1) = *JMI_GLOBAL(CCodeGenCompositeStatementTests_RecordStmt2_f_c);
    100106    *jmi_array_rec_1(temp_1_a, 2) = *r_v;
    101     for (i1_0i = 1; i1_0i - (1) <= floor((2) - (1)); i1_0i = i1_0i + 1 ) {
    102         for (i2_1i = 1; i2_1i - (1) <= floor((1) - (1)); i2_1i = i2_1i + 1 ) {
     107    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     108    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     109    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     110        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     111        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((1) - (1));
     112        for (i2_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i2_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    103113            jmi_array_ref_1(jmi_array_rec_1(y_a, i1_0i)->x, i2_1i) = jmi_array_val_1(jmi_array_rec_1(temp_1_a, i1_0i)->x, i2_1i);
    104114        }
     
    164174    tmp_1->r = tmp_2;
    165175    c_v->r = tmp_1;
     176    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     177    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
    166178    JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, temp_1_a, 1, 1, 1)
    167179    jmi_array_ref_1(temp_1_a, 1) = 1;
    168     for (i1_0i = 1; i1_0i - (1) <= floor((1) - (1)); i1_0i = i1_0i + 1 ) {
     180    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     181    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((1) - (1));
     182    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    169183        jmi_array_ref_1(c_v->r->r->x, i1_0i) = jmi_array_val_1(temp_1_a, i1_0i);
    170184    }
     
    186200    jmi_array_rec_1(temp_2_a, 1)->r->r = jmi_dynamic_function_pool_alloc(&dyn_mem, 1*sizeof(R1_0_r), TRUE);
    187201    JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, jmi_array_rec_1(temp_2_a, 1)->r->r->x, 1, 1, 1)
    188     for (i1_1i = 1; i1_1i - (1) <= floor((1) - (1)); i1_1i = i1_1i + 1 ) {
     202    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     203    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((1) - (1));
     204    for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    189205        jmi_array_ref_1(jmi_array_rec_1(temp_2_a, 1)->r->r->x, i1_1i) = jmi_array_val_1(c_v->r->r->x, i1_1i);
    190206    }
    191207    jmi_array_rec_1(temp_2_a, 1)->r->x = c_v->r->x;
    192208    *jmi_array_rec_1(temp_2_a, 2) = *r_v;
    193     for (i1_2i = 1; i1_2i - (1) <= floor((2) - (1)); i1_2i = i1_2i + 1 ) {
    194         for (i2_3i = 1; i2_3i - (1) <= floor((1) - (1)); i2_3i = i2_3i + 1 ) {
     209    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     210    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     211    for (i1_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     212        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     213        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((1) - (1));
     214        for (i2_3i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i2_3i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    195215            jmi_array_ref_1(jmi_array_rec_1(y_a, i1_2i)->r->r->x, i2_3i) = jmi_array_val_1(jmi_array_rec_1(temp_2_a, i1_2i)->r->r->x, i2_3i);
    196216        }
     
    233253    jmi_real_t i1_0i;
    234254    jmi_real_t i2_1i;
     255    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     256    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
    235257    if (y_a == NULL) {
    236258        JMI_ARRAY_INIT_1(STACK, R1_0_r, R1_0_ra, y_an, 1, 1, 1)
     
    241263    JMI_ARRAY_INIT_1(STACK, R1_0_r, R1_0_ra, temp_1_a, 1, 1, 1)
    242264    jmi_array_rec_1(temp_1_a, 1)->x = JMI_GLOBAL(CCodeGenCompositeStatementTests_RecordStmt4_f_c);
    243     for (i1_0i = 1; i1_0i - (1) <= floor((1) - (1)); i1_0i = i1_0i + 1 ) {
    244         for (i2_1i = 1; i2_1i - (1) <= floor((1) - (1)); i2_1i = i2_1i + 1 ) {
     265    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     266    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((1) - (1));
     267    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     268        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     269        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((1) - (1));
     270        for (i2_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i2_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    245271            jmi_array_ref_1(jmi_array_rec_1(y_a, i1_0i)->x, i2_1i) = jmi_array_val_1(jmi_array_rec_1(temp_1_a, i1_0i)->x, i2_1i);
    246272        }
     
    289315    jmi_real_t i2_1i;
    290316    jmi_real_t i3_2i;
     317    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 3)
     318    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 3)
    291319    if (y_a == NULL) {
    292320        JMI_ARRAY_INIT_1(STACK, R2_1_r, R2_1_ra, y_an, 1, 1, 1)
     
    301329    jmi_array_rec_1(temp_2_a, 1)->x = JMI_GLOBAL(CCodeGenCompositeStatementTests_RecordStmt5_f_c);
    302330    jmi_array_rec_1(temp_1_a, 1)->r1 = temp_2_a;
    303     for (i1_0i = 1; i1_0i - (1) <= floor((1) - (1)); i1_0i = i1_0i + 1 ) {
    304         for (i2_1i = 1; i2_1i - (1) <= floor((1) - (1)); i2_1i = i2_1i + 1 ) {
    305             for (i3_2i = 1; i3_2i - (1) <= floor((1) - (1)); i3_2i = i3_2i + 1 ) {
     331    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     332    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((1) - (1));
     333    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     334        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     335        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((1) - (1));
     336        for (i2_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i2_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
     337            jmi_array_ref_1(_for_loop_variables_i2, 3) = 0;
     338            jmi_array_ref_1(_for_loop_variables_i1, 3) = floor((1) - (1));
     339            for (i3_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 3) <= jmi_array_val_1(_for_loop_variables_i1, 3); i3_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 3)))) {
    306340                jmi_array_ref_1(jmi_array_rec_1(jmi_array_rec_1(y_a, i1_0i)->r1, i2_1i)->x, i3_2i) = jmi_array_val_1(jmi_array_rec_1(jmi_array_rec_1(temp_1_a, i1_0i)->r1, i2_1i)->x, i3_2i);
    307341            }
  • branches/dev-cw-2719/Compiler/ModelicaCBackEnd/test/modelica/CCodeGenExternalTests.mo

    r14143 r14175  
    22422242    JMI_DEF(INT_EXT, tmp_10)
    22432243    extern void dgeev_(const char*, const char*, int*, double*, int*, double*, double*, double*, int*, double*, int*, double*, int*, int*);
     2244    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     2245    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
    22442246    if (eigenReal_a == NULL) {
    22452247        JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, eigenReal_an, jmi_array_size(A_a, 0), 1, jmi_array_size(A_a, 0))
     
    22582260    lwork_v = 12 * n_v;
    22592261    JMI_ARRAY_INIT_2(HEAP, jmi_real_t, jmi_array_t, Awork_a, jmi_array_size(A_a, 0) * jmi_array_size(A_a, 0), 2, jmi_array_size(A_a, 0), jmi_array_size(A_a, 0))
    2260     for (i1_0i = 1; i1_0i - (1) <= floor((jmi_array_size(A_a, 0)) - (1)); i1_0i = i1_0i + 1 ) {
    2261         for (i2_1i = 1; i2_1i - (1) <= floor((jmi_array_size(A_a, 0)) - (1)); i2_1i = i2_1i + 1 ) {
     2262    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     2263    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(A_a, 0)) - (1));
     2264    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     2265        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     2266        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((jmi_array_size(A_a, 0)) - (1));
     2267        for (i2_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i2_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    22622268            jmi_array_ref_2(Awork_a, i1_0i, i2_1i) = jmi_array_val_2(A_a, i1_0i, i2_1i);
    22632269        }
  • branches/dev-cw-2719/Compiler/ModelicaCBackEnd/test/modelica/CCodeGenGlobalsTests.mo

    r14143 r14175  
    10431043    JMI_DEF(REA, y_v)
    10441044    jmi_real_t i_0i;
     1045    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     1046    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    10451047    y_v = x_v;
    1046     for (i_0i = 1; i_0i - (1) <= floor((2) - (1)); i_0i = i_0i + 1 ) {
     1048    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     1049    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     1050    for (i_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    10471051        y_v = JMI_POW_FUNCTION(\"CCodeGenGlobalsTests.GlobalVariables.GlobalConstantForPowInt1.f\", y_v, jmi_array_val_1(JMI_GLOBAL(CCodeGenGlobalsTests_GlobalVariables_GlobalConstantForPowInt1_f_c), i_0i), \"y ^ global(CCodeGenGlobalsTests.GlobalVariables.GlobalConstantForPowInt1.f.c[i])\");
    10481052    }
  • branches/dev-cw-2719/Compiler/ModelicaCBackEnd/test/modelica/CCodeGenLiteralTests.mo

    r14143 r14175  
    5959    JMI_DEF(INT, temp_1_v)
    6060    jmi_real_t i1_0i;
     61    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     62    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    6163    temp_1_v = INT_MIN;
    62     for (i1_0i = 1; i1_0i - (1) <= floor((jmi_array_size(x_a, 0)) - (1)); i1_0i = i1_0i + 1 ) {
     64    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     65    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(x_a, 0)) - (1));
     66    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    6367        temp_1_v = COND_EXP_EQ(COND_EXP_GT(temp_1_v, jmi_array_val_1(x_a, i1_0i), JMI_TRUE, JMI_FALSE), JMI_TRUE, temp_1_v, jmi_array_val_1(x_a, i1_0i));
    6468    }
  • branches/dev-cw-2719/Compiler/ModelicaCBackEnd/test/modelica/CCodeGenTests.mo

    r14143 r14175  
    910910    jmi_real_t i1_0i;
    911911    jmi_real_t i2_1i;
     912    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     913    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
    912914    if (y_a == NULL) {
    913915        JMI_ARRAY_INIT_2(STACK, jmi_real_t, jmi_array_t, y_an, 1, 2, 1, 1)
     
    915917    }
    916918    JMI_ARRAY_INIT_2(STACK, jmi_real_t, jmi_array_t, temp_1_a, 1, 2, 1, 1)
    917     for (i1_0i = 1; i1_0i - (1) <= floor((1) - (1)); i1_0i = i1_0i + 1 ) {
    918         for (i2_1i = 1; i2_1i - (1) <= floor((1) - (1)); i2_1i = i2_1i + 1 ) {
     919    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     920    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((1) - (1));
     921    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     922        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     923        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((1) - (1));
     924        for (i2_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i2_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    919925            jmi_array_ref_2(temp_1_a, i1_0i, i2_1i) = jmi_array_val_2(x_a, i2_1i, i1_0i);
    920926        }
     
    933939    jmi_real_t i1_3i;
    934940    jmi_real_t i2_4i;
     941    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     942    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
    935943    if (y_a == NULL) {
    936944        JMI_ARRAY_INIT_2(STACK, jmi_real_t, jmi_array_t, y_an, 1, 2, 1, 1)
     
    940948    JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, temp_2_a, 1, 1, 1)
    941949    jmi_array_ref_1(temp_2_a, 1) = t_v;
    942     for (i1_2i = 1; i1_2i - (1) <= floor((1) - (1)); i1_2i = i1_2i + 1 ) {
     950    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     951    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((1) - (1));
     952    for (i1_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    943953        jmi_array_ref_2(temp_1_a, 1, i1_2i) = jmi_array_val_1(temp_2_a, i1_2i);
    944954    }
    945     for (i1_3i = 1; i1_3i - (1) <= floor((1) - (1)); i1_3i = i1_3i + 1 ) {
    946         for (i2_4i = 1; i2_4i - (1) <= floor((1) - (1)); i2_4i = i2_4i + 1 ) {
     955    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     956    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((1) - (1));
     957    for (i1_3i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_3i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     958        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     959        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((1) - (1));
     960        for (i2_4i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i2_4i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    947961            jmi_array_ref_2(y_a, i1_3i, i2_4i) = jmi_array_val_2(temp_1_a, i1_3i, i2_4i);
    948962        }
     
    958972    jmi_real_t i1_5i;
    959973    jmi_real_t i2_6i;
     974    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     975    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
    960976    temp_1_v = 0.0;
    961     for (i1_5i = 1; i1_5i - (1) <= floor((jmi_array_size(x_a, 0)) - (1)); i1_5i = i1_5i + 1 ) {
    962         for (i2_6i = 1; i2_6i - (1) <= floor((jmi_array_size(x_a, 1)) - (1)); i2_6i = i2_6i + 1 ) {
     977    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     978    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(x_a, 0)) - (1));
     979    for (i1_5i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_5i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     980        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     981        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((jmi_array_size(x_a, 1)) - (1));
     982        for (i2_6i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i2_6i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    963983            temp_1_v = temp_1_v + jmi_array_val_2(x_a, i1_5i, i2_6i);
    964984        }
     
    29222942    JMI_ARR(STACK, jmi_real_t, jmi_array_t, y_an, 2, 1)
    29232943    jmi_real_t i1_0i;
     2944    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     2945    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    29242946    if (y_a == NULL) {
    29252947        JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, y_an, 2, 1, 2)
    29262948        y_a = y_an;
    29272949    }
    2928     for (i1_0i = 1; i1_0i - (1) <= floor((2) - (1)); i1_0i = i1_0i + 1 ) {
     2950    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     2951    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     2952    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    29292953        jmi_array_ref_1(y_a, i1_0i) = jmi_array_val_1(x_a, i1_0i);
    29302954    }
     
    29923016    jmi_real_t i1_0i;
    29933017    jmi_real_t i1_1i;
     3018    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     3019    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    29943020    if (dx_a == NULL) {
    29953021        JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, dx_an, 2, 1, 2)
     
    30033029    jmi_array_ref_1(temp_1_a, 1) = u_v;
    30043030    jmi_array_ref_1(temp_1_a, 2) = 0;
    3005     for (i1_0i = 1; i1_0i - (1) <= floor((2) - (1)); i1_0i = i1_0i + 1 ) {
     3031    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3032    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     3033    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    30063034        jmi_array_ref_1(dx_a, i1_0i) = - jmi_array_val_1(x_a, i1_0i) + jmi_array_val_1(temp_1_a, i1_0i);
    30073035    }
    3008     for (i1_1i = 1; i1_1i - (1) <= floor((2) - (1)); i1_1i = i1_1i + 1 ) {
     3036    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3037    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     3038    for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    30093039        jmi_array_ref_1(y_a, i1_1i) = 2 * jmi_array_val_1(x_a, i1_1i);
    30103040    }
     
    30793109    jmi_real_t i1_0i;
    30803110    jmi_real_t i1_1i;
     3111    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     3112    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    30813113    if (dx_a == NULL) {
    30823114        JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, dx_an, 2, 1, 2)
     
    30903122    jmi_array_ref_1(temp_1_a, 1) = u_v;
    30913123    jmi_array_ref_1(temp_1_a, 2) = 0;
    3092     for (i1_0i = 1; i1_0i - (1) <= floor((2) - (1)); i1_0i = i1_0i + 1 ) {
     3124    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3125    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     3126    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    30933127        jmi_array_ref_1(dx_a, i1_0i) = - jmi_array_val_1(x_a, i1_0i) + jmi_array_val_1(temp_1_a, i1_0i);
    30943128    }
    3095     for (i1_1i = 1; i1_1i - (1) <= floor((2) - (1)); i1_1i = i1_1i + 1 ) {
     3129    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3130    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     3131    for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    30963132        jmi_array_ref_1(y_a, i1_1i) = 2 * jmi_array_val_1(x_a, i1_1i);
    30973133    }
     
    32943330    JMI_ARR(STACK, jmi_real_t, jmi_array_t, y_an, 2, 1)
    32953331    jmi_real_t i_0i;
     3332    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     3333    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    32963334    if (y_a == NULL) {
    32973335        JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, y_an, 2, 1, 2)
    32983336        y_a = y_an;
    32993337    }
    3300     for (i_0i = 1; i_0i - (1) <= floor((2) - (1)); i_0i = i_0i + 1 ) {
     3338    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3339    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     3340    for (i_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    33013341        jmi_array_ref_1(y_a, i_0i) = jmi_array_val_1(x_a, 1) + jmi_array_val_1(x_a, 2);
    33023342    }
     
    36403680    JMI_ARR(STACK, jmi_real_t, jmi_array_t, tmp_3, 2, 1)
    36413681    jmi_real_t i1_0i;
     3682    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     3683    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    36423684    if (y_a == NULL) {
    36433685        JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, tmp_1, 2, 1, 2)
     
    36583700    jmi_array_ref_1(tmp_3, 1) = x_v;
    36593701    jmi_array_ref_1(tmp_3, 2) = x_v;
    3660     for (i1_0i = 1; i1_0i - (1) <= floor((func_CCodeGenTests_FuncWithArray_g_exp1(tmp_3)) - (1)); i1_0i = i1_0i + 1 ) {
     3702    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3703    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((func_CCodeGenTests_FuncWithArray_g_exp1(tmp_3)) - (1));
     3704    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    36613705        jmi_array_ref_1(y_a, i1_0i) = jmi_array_val_1(temp_1_a, i1_0i);
    36623706    }
     
    36723716    jmi_real_t i1_1i;
    36733717    jmi_real_t i1_2i;
     3718    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     3719    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    36743720    temp_1_v = 0.0;
    3675     for (i1_1i = 1; i1_1i - (1) <= floor((jmi_array_size(x_a, 0)) - (1)); i1_1i = i1_1i + 1 ) {
     3721    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3722    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(x_a, 0)) - (1));
     3723    for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    36763724        temp_1_v = temp_1_v + jmi_array_val_1(x_a, i1_1i);
    36773725    }
    36783726    temp_2_v = 0.0;
    3679     for (i1_2i = 1; i1_2i - (1) <= floor((jmi_array_size(x_a, 0)) - (1)); i1_2i = i1_2i + 1 ) {
     3727    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3728    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(x_a, 0)) - (1));
     3729    for (i1_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    36803730        temp_2_v = temp_2_v + jmi_array_val_1(x_a, i1_2i);
    36813731    }
     
    37253775    JMI_DEF(REA, x_v)
    37263776    jmi_real_t i_0i;
     3777    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     3778    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    37273779    o_v = 1.0;
    37283780    x_v = 0;
    3729     for (i_0i = 1; i_0i - (1) <= floor((3) - (1)); i_0i = i_0i + 1 ) {
     3781    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3782    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     3783    for (i_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    37303784        x_v = x_v + i_0i;
    37313785    }
     
    37573811 Real x = f();
    37583812
    3759     annotation(__JModelica(UnitTesting(tests={
    3760         CCodeGenTestCase(
    3761             name="CFor2",
    3762             description="C code generation for for loops: generic exp",
    3763             variability_propagation=false,
    3764             inline_functions="none",
    3765             template="$C_functions$",
    3766             generatedCode="
     3813annotation(__JModelica(UnitTesting(tests={
     3814    CCodeGenTestCase(
     3815        name="Loops_For2",
     3816        description="C code generation for for loops: generic exp",
     3817        variability_propagation=false,
     3818        inline_functions="none",
     3819        template="$C_functions$",
     3820        generatedCode="
    37673821void func_CCodeGenTests_Loops_For2_f_def0(jmi_real_t* o_o) {
    37683822    JMI_DYNAMIC_INIT()
     
    37713825    JMI_ARR(STACK, jmi_real_t, jmi_array_t, temp_1_a, 3, 1)
    37723826    jmi_real_t i_0i;
    3773     int i_0ii;
     3827    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     3828    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    37743829    o_v = 1.0;
    37753830    x_v = 0;
     
    37783833    jmi_array_ref_1(temp_1_a, 2) = 3;
    37793834    jmi_array_ref_1(temp_1_a, 3) = 5;
    3780     for (i_0ii = 0; i_0ii < jmi_array_size(temp_1_a, 0); i_0ii++) {
    3781         i_0i = jmi_array_val_1(temp_1_a, i_0ii);
     3835    for (jmi_array_ref_1(_for_loop_variables_i1, 1) = 0; jmi_array_val_1(_for_loop_variables_i1, 1) < jmi_array_size(temp_1_a, 0); (jmi_array_ref_1(_for_loop_variables_i1, 1))++) {
     3836        i_0i = jmi_array_val_1(temp_1_a, jmi_array_val_1(_for_loop_variables_i1, 1));
    37823837        x_v = x_v + i_0i;
    37833838    }
     
    38223877    JMI_DEF(REA, x_v)
    38233878    jmi_real_t i_0i;
    3824     jmi_int_t i_0in;
     3879    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     3880    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    38253881    o_v = 1.0;
    38263882    x_v = 0;
    3827     i_0in = 0;
    3828     for (i_0i = 3; i_0in <= floor(((1) - (3)) / (-1)); i_0i = 3 + (-1) * (++i_0in)) {
     3883    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3884    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor(((1) - (3)) / (-1));
     3885    for (i_0i = 3; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i_0i = 3 + (-1) * (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    38293886        x_v = x_v + i_0i;
    38303887    }
     
    38703927    JMI_DEF(REA, x_v)
    38713928    jmi_real_t i_0i;
    3872     jmi_int_t i_0in;
     3929    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     3930    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    38733931    o_v = 1.0;
    38743932    x_v = 0;
    3875     i_0in = 0;
    3876     for (i_0i = 3; i_0in <= floor(((1) - (3)) / (i_v)); i_0i = 3 + (i_v) * (++i_0in)) {
     3933    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3934    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor(((1) - (3)) / (i_v));
     3935    for (i_0i = 3; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i_0i = 3 + (i_v) * (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    38773936        x_v = x_v + i_0i;
    38783937    }
     
    38903949")})));
    38913950end For4;
     3951
     3952model For5
     3953function f
     3954    input Real[10] u;
     3955    output Real y;
     3956protected
     3957    Integer i,j;
     3958algorithm
     3959    for i in 1:5 loop
     3960        y := y + u[i];
     3961        for j in 1:4 loop
     3962            y := y + u[i];
     3963        end for;
     3964    end for;
     3965    for i in 1:3 loop
     3966        y := y + u[i];
     3967    end for
     3968    annotation(Inline=false);
     3969end f;
     3970
     3971    Real[10] y = {1,2,3,4,5,6,7,8,9,10};
     3972
     3973    Real x;
     3974equation
     3975    der(x) = f(y);
     3976
     3977
     3978annotation(__JModelica(UnitTesting(tests={
     3979    CCodeGenTestCase(
     3980        name="Loops_For5",
     3981        description="C code generation nested and multiple for loops (checking additional added variables)",
     3982        variability_propagation=false,
     3983        inline_functions="none",
     3984        template="$C_functions$",
     3985        generatedCode="
     3986void func_CCodeGenTests_Loops_For5_f_def0(jmi_array_t* u_a, jmi_real_t* y_o) {
     3987    JMI_DYNAMIC_INIT()
     3988    JMI_DEF(REA, y_v)
     3989    JMI_DEF(INT, i_v)
     3990    JMI_DEF(INT, j_v)
     3991    jmi_real_t i_0i;
     3992    jmi_real_t j_1i;
     3993    jmi_real_t i_2i;
     3994    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     3995    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
     3996    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3997    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((5) - (1));
     3998    for (i_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     3999        y_v = y_v + jmi_array_val_1(u_a, i_0i);
     4000        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     4001        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((4) - (1));
     4002        for (j_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); j_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
     4003            y_v = y_v + jmi_array_val_1(u_a, i_0i);
     4004        }
     4005    }
     4006    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4007    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     4008    for (i_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     4009        y_v = y_v + jmi_array_val_1(u_a, i_2i);
     4010    }
     4011    JMI_RET(GEN, y_o, y_v)
     4012    JMI_DYNAMIC_FREE()
     4013    return;
     4014}
     4015
     4016jmi_real_t func_CCodeGenTests_Loops_For5_f_exp0(jmi_array_t* u_a) {
     4017    JMI_DEF(REA, y_v)
     4018    func_CCodeGenTests_Loops_For5_f_def0(u_a, &y_v);
     4019    return y_v;
     4020}
     4021
     4022")})));
     4023end For5;
    38924024
    38934025model ForUnknownSize1
     
    39064038    Real y[n] = (1:n) * time;
    39074039
    3908     annotation(__JModelica(UnitTesting(tests={
    3909         CCodeGenTestCase(
    3910             name="CForUnknown1",
    3911             description="C code gen for for loop over unknown size array: array variable",
    3912             template="$C_functions$",
    3913             generatedCode="
     4040annotation(__JModelica(UnitTesting(tests={
     4041    CCodeGenTestCase(
     4042        name="Loops_ForUnknownSize1",
     4043        description="C code gen for for loop over unknown size array: array variable",
     4044        template="$C_functions$",
     4045        generatedCode="
    39144046void func_CCodeGenTests_Loops_ForUnknownSize1_f_def0(jmi_array_t* y_a, jmi_real_t* x_o) {
    39154047    JMI_DYNAMIC_INIT()
    39164048    JMI_DEF(REA, x_v)
    39174049    jmi_real_t v_0i;
    3918     int v_0ii;
     4050    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     4051    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    39194052    x_v = 0;
    3920     for (v_0ii = 0; v_0ii < jmi_array_size(y_a, 0); v_0ii++) {
    3921         v_0i = jmi_array_val_1(y_a, v_0ii);
     4053    for (jmi_array_ref_1(_for_loop_variables_i1, 1) = 0; jmi_array_val_1(_for_loop_variables_i1, 1) < jmi_array_size(y_a, 0); (jmi_array_ref_1(_for_loop_variables_i1, 1))++) {
     4054        v_0i = jmi_array_val_1(y_a, jmi_array_val_1(_for_loop_variables_i1, 1));
    39224055        x_v = x_v + v_0i;
    39234056    }
     
    39614094    JMI_DEF(REA, x_v)
    39624095    jmi_real_t i_0i;
     4096    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     4097    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    39634098    x_v = 0;
    3964     for (i_0i = 1; i_0i - (1) <= floor((n_v) - (1)); i_0i = i_0i + 1 ) {
     4099    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4100    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((n_v) - (1));
     4101    for (i_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    39654102        x_v = x_v + i_0i;
    39664103    }
     
    40064143    jmi_real_t i1_0i;
    40074144    jmi_real_t i_1i;
    4008     int i_1ii;
     4145    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     4146    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    40094147    x_v = 0;
    40104148    JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, temp_1_a, JMI_MAX_EQUATION(n_v, 0.0), 1, JMI_MAX_EQUATION(n_v, 0.0))
    4011     for (i1_0i = 1; i1_0i - (1) <= floor((JMI_MAX_EQUATION(n_v, 0.0)) - (1)); i1_0i = i1_0i + 1 ) {
     4149    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4150    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((JMI_MAX_EQUATION(n_v, 0.0)) - (1));
     4151    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    40124152        jmi_array_ref_1(temp_1_a, i1_0i) = (1.0 * (i1_0i) * (i1_0i));
    40134153    }
    4014     for (i_1ii = 0; i_1ii < jmi_array_size(temp_1_a, 0); i_1ii++) {
    4015         i_1i = jmi_array_val_1(temp_1_a, i_1ii);
     4154    for (jmi_array_ref_1(_for_loop_variables_i1, 1) = 0; jmi_array_val_1(_for_loop_variables_i1, 1) < jmi_array_size(temp_1_a, 0); (jmi_array_ref_1(_for_loop_variables_i1, 1))++) {
     4155        i_1i = jmi_array_val_1(temp_1_a, jmi_array_val_1(_for_loop_variables_i1, 1));
    40164156        x_v = x_v + i_1i;
    40174157    }
     
    40574197    JMI_DEF(INT, step_v)
    40584198    jmi_real_t i_0i;
    4059     jmi_int_t i_0in;
     4199    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     4200    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    40604201    step_v = floor(x_v) + 1;
    40614202    y_v = 0;
    4062     i_0in = 0;
    4063     for (i_0i = 1; i_0in <= floor(((10) - (1)) / (step_v)); i_0i = 1 + (step_v) * (++i_0in)) {
     4203    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4204    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor(((10) - (1)) / (step_v));
     4205    for (i_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i_0i = 1 + (step_v) * (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    40644206        y_v = y_v + i_0i;
    40654207    }
     
    41114253    JMI_DEF(REA, temp_1_v)
    41124254    jmi_real_t i1_0i;
     4255    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     4256    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    41134257    temp_1_v = 0.0;
    4114     for (i1_0i = 1; i1_0i - (1) <= floor((3) - (1)); i1_0i = i1_0i + 1 ) {
     4258    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4259    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     4260    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    41154261        temp_1_v = temp_1_v + jmi_array_val_1(inp_a, i1_0i);
    41164262    }
     
    41694315    JMI_DEF(REA, temp_1_v)
    41704316    jmi_real_t i1_0i;
     4317    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     4318    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    41714319    temp_1_v = 0.0;
    4172     for (i1_0i = 1; i1_0i - (1) <= floor((3) - (1)); i1_0i = i1_0i + 1 ) {
     4320    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4321    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     4322    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    41734323        temp_1_v = temp_1_v + jmi_array_val_1(inp_a, i1_0i);
    41744324    }
     
    42274377    JMI_DEF(REA, temp_1_v)
    42284378    jmi_real_t i1_0i;
     4379    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     4380    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    42294381    temp_1_v = 0.0;
    4230     for (i1_0i = 1; i1_0i - (1) <= floor((3) - (1)); i1_0i = i1_0i + 1 ) {
     4382    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4383    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     4384    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    42314385        temp_1_v = temp_1_v + jmi_array_val_1(inp_a, i1_0i);
    42324386    }
     
    43054459    JMI_ARR(STACK, jmi_real_t, jmi_array_t, temp_1_a, 3, 1)
    43064460    jmi_real_t i1_0i;
     4461    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     4462    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    43074463    out_v = 1.0;
    43084464    JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, temp_1_a, 3, 1, 3)
    4309     for (i1_0i = 1; i1_0i - (1) <= floor((3) - (1)); i1_0i = i1_0i + 1 ) {
     4465    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4466    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     4467    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    43104468        jmi_array_ref_1(temp_1_a, i1_0i) = i1_0i;
    43114469    }
     
    43274485    JMI_DEF(REA, temp_1_v)
    43284486    jmi_real_t i1_1i;
     4487    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     4488    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    43294489    temp_1_v = 0.0;
    4330     for (i1_1i = 1; i1_1i - (1) <= floor((3) - (1)); i1_1i = i1_1i + 1 ) {
     4490    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4491    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     4492    for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    43314493        temp_1_v = temp_1_v + jmi_array_val_1(inp_a, i1_1i);
    43324494    }
     
    43864548    JMI_ARR(STACK, jmi_real_t, jmi_array_t, temp_1_a, 3, 1)
    43874549    jmi_real_t i1_0i;
     4550    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     4551    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    43884552    out_v = 1.0;
    43894553    JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, temp_1_a, 3, 1, 3)
    4390     for (i1_0i = 1; i1_0i - (1) <= floor((3) - (1)); i1_0i = i1_0i + 1 ) {
     4554    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4555    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     4556    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    43914557        jmi_array_ref_1(temp_1_a, i1_0i) = i1_0i;
    43924558    }
     
    44114577    jmi_real_t i1_1i;
    44124578    jmi_real_t i1_2i;
     4579    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     4580    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    44134581    temp_1_v = 0.0;
    4414     for (i1_1i = 1; i1_1i - (1) <= floor((3) - (1)); i1_1i = i1_1i + 1 ) {
     4582    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4583    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     4584    for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    44154585        temp_1_v = temp_1_v + jmi_array_val_1(inp_a, i1_1i);
    44164586    }
    44174587    out1_v = temp_1_v;
    44184588    temp_2_v = -1.7976931348623157E308;
    4419     for (i1_2i = 1; i1_2i - (1) <= floor((3) - (1)); i1_2i = i1_2i + 1 ) {
     4589    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4590    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     4591    for (i1_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    44204592        temp_2_v = COND_EXP_EQ(COND_EXP_GT(temp_2_v, jmi_array_val_1(inp_a, i1_2i), JMI_TRUE, JMI_FALSE), JMI_TRUE, temp_2_v, jmi_array_val_1(inp_a, i1_2i));
    44214593    }
     
    44844656    jmi_real_t i1_1i;
    44854657    jmi_real_t i1_2i;
     4658    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     4659    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    44864660    out_v = 1.0;
    44874661    if (COND_EXP_EQ(JMI_MAX_EQUATION(floor(2.0 - (i_v + 1.0)) + 1.0, 0.0), 2.0, JMI_TRUE, JMI_FALSE) == JMI_FALSE) {
     
    44894663    }
    44904664    JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, temp_1_a, JMI_MAX_EQUATION(floor(2.0 - (i_v + 1.0)) + 1.0, 0.0), 1, JMI_MAX_EQUATION(floor(2.0 - (i_v + 1.0)) + 1.0, 0.0))
    4491     for (i1_0i = 1; i1_0i - (1) <= floor((JMI_MAX_EQUATION(floor(2.0 - (i_v + 1.0)) + 1.0, 0.0)) - (1)); i1_0i = i1_0i + 1 ) {
     4665    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4666    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((JMI_MAX_EQUATION(floor(2.0 - (i_v + 1.0)) + 1.0, 0.0)) - (1));
     4667    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    44924668        jmi_array_ref_1(temp_1_a, i1_0i) = i_v + 1 + (i1_0i - 1);
    44934669    }
     
    44974673        }
    44984674        JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, temp_2_a, JMI_MAX_EQUATION(floor(6.0 - (i_v + 5.0)) + 1.0, 0.0), 1, JMI_MAX_EQUATION(floor(6.0 - (i_v + 5.0)) + 1.0, 0.0))
    4499         for (i1_1i = 1; i1_1i - (1) <= floor((JMI_MAX_EQUATION(floor(6.0 - (i_v + 5.0)) + 1.0, 0.0)) - (1)); i1_1i = i1_1i + 1 ) {
     4675        jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4676        jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((JMI_MAX_EQUATION(floor(6.0 - (i_v + 5.0)) + 1.0, 0.0)) - (1));
     4677        for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    45004678            jmi_array_ref_1(temp_2_a, i1_1i) = i_v + 5 + (i1_1i - 1);
    45014679        }
     
    45064684        }
    45074685        JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, temp_3_a, JMI_MAX_EQUATION(floor(8.0 - (i_v + 7.0)) + 1.0, 0.0), 1, JMI_MAX_EQUATION(floor(8.0 - (i_v + 7.0)) + 1.0, 0.0))
    4508         for (i1_2i = 1; i1_2i - (1) <= floor((JMI_MAX_EQUATION(floor(8.0 - (i_v + 7.0)) + 1.0, 0.0)) - (1)); i1_2i = i1_2i + 1 ) {
     4686        jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4687        jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((JMI_MAX_EQUATION(floor(8.0 - (i_v + 7.0)) + 1.0, 0.0)) - (1));
     4688        for (i1_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    45094689            jmi_array_ref_1(temp_3_a, i1_2i) = i_v + 7 + (i1_2i - 1);
    45104690        }
     
    45274707    JMI_DEF(REA, temp_1_v)
    45284708    jmi_real_t i1_3i;
     4709    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     4710    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    45294711    temp_1_v = 0.0;
    4530     for (i1_3i = 1; i1_3i - (1) <= floor((2) - (1)); i1_3i = i1_3i + 1 ) {
     4712    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4713    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     4714    for (i1_3i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_3i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    45314715        temp_1_v = temp_1_v + jmi_array_val_1(inp_a, i1_3i);
    45324716    }
     
    45884772    jmi_real_t i1_1i;
    45894773    jmi_real_t i1_2i;
     4774    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     4775    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    45904776    out_v = 1.0;
    45914777    JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, temp_1_a, 3, 1, 3)
    4592     for (i1_0i = 1; i1_0i - (1) <= floor((3) - (1)); i1_0i = i1_0i + 1 ) {
     4778    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4779    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     4780    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    45934781        jmi_array_ref_1(temp_1_a, i1_0i) = i1_0i;
    45944782    }
    45954783    while (COND_EXP_LT(func_CCodeGenTests_CArrayInput7_f2_exp1(temp_1_a), 2, JMI_TRUE, JMI_FALSE)) {
    45964784        JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, temp_2_a, 3, 1, 3)
    4597         for (i1_1i = 1; i1_1i - (1) <= floor((3) - (1)); i1_1i = i1_1i + 1 ) {
     4785        jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4786        jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     4787        for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    45984788            jmi_array_ref_1(temp_2_a, i1_1i) = 4 + (i1_1i - 1);
    45994789        }
    46004790        out_v = func_CCodeGenTests_CArrayInput7_f2_exp1(temp_2_a);
    46014791        JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, temp_1_a, 3, 1, 3)
    4602         for (i1_2i = 1; i1_2i - (1) <= floor((3) - (1)); i1_2i = i1_2i + 1 ) {
     4792        jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4793        jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     4794        for (i1_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    46034795            jmi_array_ref_1(temp_1_a, i1_2i) = i1_2i;
    46044796        }
     
    46204812    JMI_DEF(REA, temp_1_v)
    46214813    jmi_real_t i1_3i;
     4814    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     4815    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    46224816    temp_1_v = 0.0;
    4623     for (i1_3i = 1; i1_3i - (1) <= floor((3) - (1)); i1_3i = i1_3i + 1 ) {
     4817    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4818    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     4819    for (i1_3i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_3i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    46244820        temp_1_v = temp_1_v + jmi_array_val_1(inp_a, i1_3i);
    46254821    }
     
    46834879    jmi_real_t i1_1i;
    46844880    jmi_real_t i_2i;
    4685     int i_2ii;
    46864881    jmi_real_t i1_3i;
     4882    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     4883    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
    46874884    out_v = 1.0;
    46884885    JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, temp_1_a, 2, 1, 2)
    46894886    JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, temp_2_a, 3, 1, 3)
    4690     for (i1_0i = 1; i1_0i - (1) <= floor((3) - (1)); i1_0i = i1_0i + 1 ) {
     4887    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4888    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     4889    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    46914890        jmi_array_ref_1(temp_2_a, i1_0i) = i1_0i;
    46924891    }
    46934892    jmi_array_ref_1(temp_1_a, 1) = func_CCodeGenTests_CArrayInput8_f2_exp1(temp_2_a);
    46944893    JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, temp_3_a, 3, 1, 3)
    4695     for (i1_1i = 1; i1_1i - (1) <= floor((3) - (1)); i1_1i = i1_1i + 1 ) {
     4894    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4895    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     4896    for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    46964897        jmi_array_ref_1(temp_3_a, i1_1i) = 4 + (i1_1i - 1);
    46974898    }
    46984899    jmi_array_ref_1(temp_1_a, 2) = func_CCodeGenTests_CArrayInput8_f2_exp1(temp_3_a);
    4699     for (i_2ii = 0; i_2ii < jmi_array_size(temp_1_a, 0); i_2ii++) {
    4700         i_2i = jmi_array_val_1(temp_1_a, i_2ii);
     4900    for (jmi_array_ref_1(_for_loop_variables_i1, 1) = 0; jmi_array_val_1(_for_loop_variables_i1, 1) < jmi_array_size(temp_1_a, 0); (jmi_array_ref_1(_for_loop_variables_i1, 1))++) {
     4901        i_2i = jmi_array_val_1(temp_1_a, jmi_array_val_1(_for_loop_variables_i1, 1));
    47014902        JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, temp_4_a, 3, 1, 3)
    4702         for (i1_3i = 1; i1_3i - (1) <= floor((3) - (1)); i1_3i = i1_3i + 1 ) {
     4903        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     4904        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((3) - (1));
     4905        for (i1_3i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i1_3i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    47034906            jmi_array_ref_1(temp_4_a, i1_3i) = 7 + (i1_3i - 1);
    47044907        }
     
    47214924    JMI_DEF(REA, temp_1_v)
    47224925    jmi_real_t i1_4i;
     4926    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     4927    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    47234928    temp_1_v = 0.0;
    4724     for (i1_4i = 1; i1_4i - (1) <= floor((3) - (1)); i1_4i = i1_4i + 1 ) {
     4929    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4930    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     4931    for (i1_4i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_4i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    47254932        temp_1_v = temp_1_v + jmi_array_val_1(inp_a, i1_4i);
    47264933    }
     
    47704977    JMI_ARR(STACK, jmi_real_t, jmi_array_t, temp_1_a, 2, 1)
    47714978    jmi_real_t i1_0i;
     4979    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     4980    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    47724981    if (o_a == NULL) {
    47734982        JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, o_an, 2, 1, 2)
     
    47774986    jmi_array_ref_1(temp_1_a, 1) = 1;
    47784987    jmi_array_ref_1(temp_1_a, 2) = 2;
    4779     for (i1_0i = 1; i1_0i - (1) <= floor((2) - (1)); i1_0i = i1_0i + 1 ) {
     4988    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     4989    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     4990    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    47804991        jmi_array_ref_1(o_a, i1_0i) = jmi_array_val_1(temp_1_a, i1_0i);
    47814992    }
     
    48255036    JMI_ARR(STACK, jmi_real_t, jmi_array_t, temp_1_a, 2, 1)
    48265037    jmi_real_t i1_0i;
     5038    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     5039    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    48275040    if (o_a == NULL) {
    48285041        JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, o_an, 2, 1, 2)
     
    48325045    jmi_array_ref_1(temp_1_a, 1) = 1;
    48335046    jmi_array_ref_1(temp_1_a, 2) = 2;
    4834     for (i1_0i = 1; i1_0i - (1) <= floor((2) - (1)); i1_0i = i1_0i + 1 ) {
     5047    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5048    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     5049    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    48355050        jmi_array_ref_1(o_a, i1_0i) = jmi_array_val_1(temp_1_a, i1_0i);
    48365051    }
     
    48925107    JMI_ARR(STACK, jmi_real_t, jmi_array_t, temp_4_a, 2, 1)
    48935108    jmi_real_t i1_0i;
     5109    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     5110    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    48945111    o_v = 0;
    48955112    JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, temp_3_a, 2, 1, 2)
     
    48995116    jmi_array_ref_1(temp_4_a, 2) = 4;
    49005117    temp_2_v = 0.0;
    4901     for (i1_0i = 1; i1_0i - (1) <= floor((2) - (1)); i1_0i = i1_0i + 1 ) {
     5118    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5119    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     5120    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    49025121        temp_2_v = temp_2_v + jmi_array_val_1(temp_3_a, i1_0i) * jmi_array_val_1(temp_4_a, i1_0i);
    49035122    }
     
    49205139    JMI_ARR(STACK, jmi_real_t, jmi_array_t, temp_1_a, 2, 1)
    49215140    jmi_real_t i1_1i;
     5141    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     5142    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    49225143    if (o_a == NULL) {
    49235144        JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, o_an, 2, 1, 2)
     
    49275148    jmi_array_ref_1(temp_1_a, 1) = 1;
    49285149    jmi_array_ref_1(temp_1_a, 2) = 2;
    4929     for (i1_1i = 1; i1_1i - (1) <= floor((2) - (1)); i1_1i = i1_1i + 1 ) {
     5150    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5151    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     5152    for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    49305153        jmi_array_ref_1(o_a, i1_1i) = jmi_array_val_1(temp_1_a, i1_1i);
    49315154    }
     
    50005223    JMI_ARR(STACK, jmi_real_t, jmi_array_t, temp_1_a, 2, 1)
    50015224    jmi_real_t i1_0i;
     5225    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     5226    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    50025227    if (o1_a == NULL) {
    50035228        JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, o1_an, 2, 1, 2)
     
    50075232    jmi_array_ref_1(temp_1_a, 1) = 1;
    50085233    jmi_array_ref_1(temp_1_a, 2) = 2;
    5009     for (i1_0i = 1; i1_0i - (1) <= floor((2) - (1)); i1_0i = i1_0i + 1 ) {
     5234    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5235    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     5236    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    50105237        jmi_array_ref_1(o1_a, i1_0i) = jmi_array_val_1(temp_1_a, i1_0i);
    50115238    }
     
    50835310    JMI_DEF(REA, o2_v)
    50845311    jmi_real_t i1_0i;
     5312    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     5313    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    50855314    if (o1_a == NULL) {
    50865315        JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, o1_an, 2, 1, 2)
    50875316        o1_a = o1_an;
    50885317    }
    5089     for (i1_0i = 1; i1_0i - (1) <= floor((2) - (1)); i1_0i = i1_0i + 1 ) {
     5318    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5319    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     5320    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    50905321        jmi_array_ref_1(o1_a, i1_0i) = jmi_array_val_1(i_a, i1_0i);
    50915322    }
     
    51495380    JMI_ARR(HEAP, jmi_real_t, jmi_array_t, o_an, -1, 1)
    51505381    jmi_real_t i1_0i;
     5382    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     5383    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    51515384    if (o_a == NULL) {
    51525385        JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, o_an, jmi_array_size(a_a, 0), 1, jmi_array_size(a_a, 0))
    51535386        o_a = o_an;
    51545387    }
    5155     for (i1_0i = 1; i1_0i - (1) <= floor((jmi_array_size(a_a, 0)) - (1)); i1_0i = i1_0i + 1 ) {
     5388    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5389    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(a_a, 0)) - (1));
     5390    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    51565391        jmi_array_ref_1(o_a, i1_0i) = jmi_array_val_1(a_a, i1_0i) + jmi_array_val_1(b_a, i1_0i);
    51575392    }
     
    51975432    jmi_real_t i1_5i;
    51985433    jmi_real_t i2_6i;
     5434    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 3)
     5435    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 3)
    51995436    if (y_a == NULL) {
    52005437        JMI_ARRAY_INIT_2(HEAP, jmi_real_t, jmi_array_t, y_an, jmi_array_size(x_a, 0) * 2, 2, jmi_array_size(x_a, 0), 2)
     
    52065443    jmi_array_ref_1(temp_4_a, 1) = 1;
    52075444    jmi_array_ref_1(temp_4_a, 2) = 2;
    5208     for (i3_0i = 1; i3_0i - (1) <= floor((2) - (1)); i3_0i = i3_0i + 1 ) {
     5445    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5446    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     5447    for (i3_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i3_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    52095448        jmi_array_ref_2(temp_3_a, 1, i3_0i) = jmi_array_val_1(temp_4_a, i3_0i);
    52105449    }
     
    52125451    jmi_array_ref_1(temp_5_a, 1) = 3;
    52135452    jmi_array_ref_1(temp_5_a, 2) = 4;
    5214     for (i3_1i = 1; i3_1i - (1) <= floor((2) - (1)); i3_1i = i3_1i + 1 ) {
     5453    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5454    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     5455    for (i3_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i3_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    52155456        jmi_array_ref_2(temp_3_a, 2, i3_1i) = jmi_array_val_1(temp_5_a, i3_1i);
    52165457    }
    5217     for (i1_2i = 1; i1_2i - (1) <= floor((jmi_array_size(x_a, 0)) - (1)); i1_2i = i1_2i + 1 ) {
    5218         for (i2_3i = 1; i2_3i - (1) <= floor((2) - (1)); i2_3i = i2_3i + 1 ) {
     5458    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5459    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(x_a, 0)) - (1));
     5460    for (i1_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     5461        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     5462        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((2) - (1));
     5463        for (i2_3i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i2_3i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    52195464            temp_2_v = 0.0;
    5220             for (i3_4i = 1; i3_4i - (1) <= floor((2) - (1)); i3_4i = i3_4i + 1 ) {
     5465            jmi_array_ref_1(_for_loop_variables_i2, 3) = 0;
     5466            jmi_array_ref_1(_for_loop_variables_i1, 3) = floor((2) - (1));
     5467            for (i3_4i = 1; jmi_array_val_1(_for_loop_variables_i2, 3) <= jmi_array_val_1(_for_loop_variables_i1, 3); i3_4i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 3)))) {
    52215468                temp_2_v = temp_2_v + jmi_array_val_2(x_a, i1_2i, i3_4i) * jmi_array_val_2(temp_3_a, i3_4i, i2_3i);
    52225469            }
     
    52245471        }
    52255472    }
    5226     for (i1_5i = 1; i1_5i - (1) <= floor((jmi_array_size(x_a, 0)) - (1)); i1_5i = i1_5i + 1 ) {
    5227         for (i2_6i = 1; i2_6i - (1) <= floor((2) - (1)); i2_6i = i2_6i + 1 ) {
     5473    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5474    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(x_a, 0)) - (1));
     5475    for (i1_5i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_5i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     5476        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     5477        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((2) - (1));
     5478        for (i2_6i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i2_6i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    52285479            jmi_array_ref_2(y_a, i1_5i, i2_6i) = jmi_array_val_2(temp_1_a, i1_5i, i2_6i);
    52295480        }
     
    52935544    JMI_DEF(REA, temp_1_v)
    52945545    jmi_real_t i1_0i;
     5546    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     5547    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    52955548    temp_1_v = 0.0;
    5296     for (i1_0i = 1; i1_0i - (1) <= floor((jmi_array_size(x3_a, 0)) - (1)); i1_0i = i1_0i + 1 ) {
     5549    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5550    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(x3_a, 0)) - (1));
     5551    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    52975552        temp_1_v = temp_1_v + jmi_array_val_1(x3_a, i1_0i);
    52985553    }
     
    53135568    JMI_ARR(HEAP, jmi_real_t, jmi_array_t, y2_an, -1, 1)
    53145569    jmi_real_t i1_1i;
     5570    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     5571    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    53155572    if (y2_a == NULL) {
    53165573        JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, y2_an, jmi_array_size(x2_a, 0), 1, jmi_array_size(x2_a, 0))
    53175574        y2_a = y2_an;
    53185575    }
    5319     for (i1_1i = 1; i1_1i - (1) <= floor((jmi_array_size(x2_a, 0)) - (1)); i1_1i = i1_1i + 1 ) {
     5576    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5577    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(x2_a, 0)) - (1));
     5578    for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    53205579        jmi_array_ref_1(y2_a, i1_1i) = jmi_array_val_1(x2_a, i1_1i);
    53215580    }
     
    53685627    jmi_real_t i1_1i;
    53695628    jmi_real_t i1_2i;
     5629    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     5630    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    53705631    if (o_a == NULL) {
    53715632        JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, o_an, jmi_array_size(i_a, 0), 1, jmi_array_size(i_a, 0))
     
    53815642    jmi_array_ref_1(temp_2_a, 2) = 1;
    53825643    jmi_array_ref_1(temp_2_a, 3) = 1;
    5383     for (i1_0i = 1; i1_0i - (1) <= floor((3) - (1)); i1_0i = i1_0i + 1 ) {
     5644    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5645    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     5646    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    53845647        jmi_array_ref_1(o_a, jmi_array_ref_1(temp_1_a, i1_0i)) = jmi_array_val_1(temp_2_a, i1_0i);
    53855648    }
    53865649    JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, temp_3_a, jmi_array_size(i_a, 0), 1, jmi_array_size(i_a, 0))
    5387     for (i1_1i = 1; i1_1i - (1) <= floor((jmi_array_size(i_a, 0)) - (1)); i1_1i = i1_1i + 1 ) {
     5650    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5651    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(i_a, 0)) - (1));
     5652    for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    53885653        jmi_array_ref_1(temp_3_a, i1_1i) = jmi_array_val_1(o_a, jmi_array_val_1(i_a, i1_1i));
    53895654    }
    53905655    JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, temp_4_a, jmi_array_size(i_a, 0), 1, jmi_array_size(i_a, 0))
    53915656    func_CCodeGenTests_CUnknownArray4_f_def1(temp_3_a, temp_4_a, NULL);
    5392     for (i1_2i = 1; i1_2i - (1) <= floor((jmi_array_size(i_a, 0)) - (1)); i1_2i = i1_2i + 1 ) {
     5657    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5658    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(i_a, 0)) - (1));
     5659    for (i1_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    53935660        jmi_array_ref_1(o_a, jmi_array_ref_1(i_a, i1_2i)) = jmi_array_val_1(temp_4_a, i1_2i);
    53945661    }
     
    54035670    JMI_DEF(REA, dummy_v)
    54045671    jmi_real_t i1_3i;
     5672    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     5673    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    54055674    if (o_a == NULL) {
    54065675        JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, o_an, jmi_array_size(i_a, 0), 1, jmi_array_size(i_a, 0))
     
    54085677    }
    54095678    dummy_v = 1;
    5410     for (i1_3i = 1; i1_3i - (1) <= floor((jmi_array_size(i_a, 0)) - (1)); i1_3i = i1_3i + 1 ) {
     5679    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5680    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(i_a, 0)) - (1));
     5681    for (i1_3i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_3i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    54115682        jmi_array_ref_1(o_a, i1_3i) = jmi_array_val_1(i_a, i1_3i);
    54125683    }
     
    54505721    jmi_real_t i3_4i;
    54515722    jmi_real_t i4_5i;
     5723    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     5724    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
    54525725    if (y_a == NULL) {
    54535726        JMI_ARRAY_INIT_2(HEAP, jmi_real_t, jmi_array_t, y_an, jmi_array_size(i1_a, 0) * jmi_array_size(i1_a, 0), 2, jmi_array_size(i1_a, 0), jmi_array_size(i1_a, 0))
     
    54565729    JMI_ARRAY_INIT_2(HEAP, jmi_real_t, jmi_array_t, temp_1_a, jmi_array_size(i1_a, 0) * jmi_array_size(i2_a, 0), 2, jmi_array_size(i1_a, 0), jmi_array_size(i2_a, 0))
    54575730    JMI_ARRAY_INIT_2(HEAP, jmi_real_t, jmi_array_t, temp_2_a, jmi_array_size(i1_a, 0) * jmi_array_size(i2_a, 0), 2, jmi_array_size(i1_a, 0), jmi_array_size(i2_a, 0))
    5458     for (i5_0i = 1; i5_0i - (1) <= floor((jmi_array_size(i1_a, 0)) - (1)); i5_0i = i5_0i + 1 ) {
    5459         for (i6_1i = 1; i6_1i - (1) <= floor((jmi_array_size(i2_a, 0)) - (1)); i6_1i = i6_1i + 1 ) {
     5731    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5732    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(i1_a, 0)) - (1));
     5733    for (i5_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i5_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     5734        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     5735        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((jmi_array_size(i2_a, 0)) - (1));
     5736        for (i6_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i6_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    54605737            jmi_array_ref_2(temp_2_a, i5_0i, i6_1i) = jmi_array_val_2(x_a, jmi_array_val_1(i1_a, i5_0i), jmi_array_val_1(i2_a, i6_1i));
    54615738        }
    54625739    }
    5463     for (i3_2i = 1; i3_2i - (1) <= floor((jmi_array_size(i1_a, 0)) - (1)); i3_2i = i3_2i + 1 ) {
    5464         for (i4_3i = 1; i4_3i - (1) <= floor((jmi_array_size(i2_a, 0)) - (1)); i4_3i = i4_3i + 1 ) {
     5740    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5741    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(i1_a, 0)) - (1));
     5742    for (i3_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i3_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     5743        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     5744        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((jmi_array_size(i2_a, 0)) - (1));
     5745        for (i4_3i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i4_3i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    54655746            jmi_array_ref_2(temp_1_a, i3_2i, i4_3i) = jmi_array_val_2(temp_2_a, i3_2i, i4_3i);
    54665747        }
    54675748    }
    5468     for (i3_4i = 1; i3_4i - (1) <= floor((jmi_array_size(i1_a, 0)) - (1)); i3_4i = i3_4i + 1 ) {
    5469         for (i4_5i = 1; i4_5i - (1) <= floor((jmi_array_size(i1_a, 0)) - (1)); i4_5i = i4_5i + 1 ) {
     5749    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5750    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(i1_a, 0)) - (1));
     5751    for (i3_4i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i3_4i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     5752        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     5753        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((jmi_array_size(i1_a, 0)) - (1));
     5754        for (i4_5i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i4_5i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    54705755            jmi_array_ref_2(y_a, i3_4i, i4_5i) = jmi_array_val_2(temp_1_a, i4_5i, i3_4i);
    54715756        }
     
    55095794    jmi_real_t i3_4i;
    55105795    jmi_real_t i4_5i;
     5796    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     5797    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
    55115798    if (y_a == NULL) {
    55125799        JMI_ARRAY_INIT_2(HEAP, jmi_real_t, jmi_array_t, y_an, (jmi_array_size(i1_a, 0) * 2 - 2) * jmi_array_size(i1_a, 0), 2, jmi_array_size(i1_a, 0) * 2 - 2, jmi_array_size(i1_a, 0))
     
    55155802    JMI_ARRAY_INIT_2(HEAP, jmi_real_t, jmi_array_t, temp_1_a, jmi_array_size(i1_a, 0) * jmi_array_size(i2_a, 0), 2, jmi_array_size(i1_a, 0), jmi_array_size(i2_a, 0))
    55165803    JMI_ARRAY_INIT_2(HEAP, jmi_real_t, jmi_array_t, temp_2_a, jmi_array_size(i1_a, 0) * jmi_array_size(i2_a, 0), 2, jmi_array_size(i1_a, 0), jmi_array_size(i2_a, 0))
    5517     for (i5_0i = 1; i5_0i - (1) <= floor((jmi_array_size(i1_a, 0)) - (1)); i5_0i = i5_0i + 1 ) {
    5518         for (i6_1i = 1; i6_1i - (1) <= floor((jmi_array_size(i2_a, 0)) - (1)); i6_1i = i6_1i + 1 ) {
     5804    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5805    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(i1_a, 0)) - (1));
     5806    for (i5_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i5_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     5807        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     5808        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((jmi_array_size(i2_a, 0)) - (1));
     5809        for (i6_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i6_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    55195810            jmi_array_ref_2(temp_2_a, i5_0i, i6_1i) = jmi_array_val_2(x_a, jmi_array_val_1(i1_a, i5_0i), jmi_array_val_1(i2_a, i6_1i));
    55205811        }
    55215812    }
    5522     for (i3_2i = 1; i3_2i - (1) <= floor((jmi_array_size(i1_a, 0)) - (1)); i3_2i = i3_2i + 1 ) {
    5523         for (i4_3i = 1; i4_3i - (1) <= floor((jmi_array_size(i2_a, 0)) - (1)); i4_3i = i4_3i + 1 ) {
     5813    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5814    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(i1_a, 0)) - (1));
     5815    for (i3_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i3_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     5816        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     5817        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((jmi_array_size(i2_a, 0)) - (1));
     5818        for (i4_3i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i4_3i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    55245819            jmi_array_ref_2(temp_1_a, i3_2i, i4_3i) = jmi_array_val_2(temp_2_a, i3_2i, i4_3i);
    55255820        }
    55265821    }
    5527     for (i3_4i = 1; i3_4i - (1) <= floor((jmi_array_size(i1_a, 0) * 2 - 2) - (1)); i3_4i = i3_4i + 1 ) {
    5528         for (i4_5i = 1; i4_5i - (1) <= floor((jmi_array_size(i1_a, 0)) - (1)); i4_5i = i4_5i + 1 ) {
     5822    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5823    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(i1_a, 0) * 2 - 2) - (1));
     5824    for (i3_4i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i3_4i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     5825        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     5826        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((jmi_array_size(i1_a, 0)) - (1));
     5827        for (i4_5i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i4_5i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    55295828            jmi_array_ref_2(y_a, i3_4i, i4_5i) = jmi_array_val_2(temp_1_a, i4_5i, i3_4i);
    55305829        }
     
    55815880    jmi_real_t i2_6i;
    55825881    jmi_real_t i3_7i;
     5882    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 4)
     5883    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 4)
    55835884    if (o_a == NULL) {
    55845885        JMI_ARRAY_INIT_2(HEAP, R1_1_r, R1_1_ra, o_an, m_v * m_v, 2, m_v, m_v)
     
    55935894        o_a = o_an;
    55945895    }
    5595     for (i_0i = 1; i_0i - (1) <= floor((m_v) - (1)); i_0i = i_0i + 1 ) {
     5896    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5897    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((m_v) - (1));
     5898    for (i_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    55965899        JMI_ARRAY_INIT_1(HEAP, R1_1_r, R1_1_ra, temp_1_a, JMI_MAX_EQUATION(m_v, 0.0), 1, JMI_MAX_EQUATION(m_v, 0.0))
    5597         for (i1_1i = 1; i1_1i - (1) <= floor((JMI_MAX_EQUATION(m_v, 0.0)) - (1)); i1_1i = i1_1i + 1 ) {
     5900        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     5901        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((JMI_MAX_EQUATION(m_v, 0.0)) - (1));
     5902        for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    55985903            JMI_ARRAY_INIT_1(STACK, R2_0_r, R2_0_ra, temp_2_a, 1, 1, 1)
    55995904            JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, temp_3_a, 1, 1, 1)
    56005905            jmi_array_ref_1(temp_3_a, 1) = i_0i * i1_1i;
    56015906            JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, jmi_array_rec_1(temp_2_a, 1)->y, 1, 1, 1)
    5602             for (i2_2i = 1; i2_2i - (1) <= floor((1) - (1)); i2_2i = i2_2i + 1 ) {
     5907            jmi_array_ref_1(_for_loop_variables_i2, 3) = 0;
     5908            jmi_array_ref_1(_for_loop_variables_i1, 3) = floor((1) - (1));
     5909            for (i2_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 3) <= jmi_array_val_1(_for_loop_variables_i1, 3); i2_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 3)))) {
    56035910                jmi_array_ref_1(jmi_array_rec_1(temp_2_a, 1)->y, i2_2i) = jmi_array_val_1(temp_3_a, i2_2i);
    56045911            }
    56055912            JMI_ARRAY_INIT_1(HEAP, R2_0_r, R2_0_ra, jmi_array_rec_1(temp_1_a, i1_1i)->x, 1, 1, 1)
    5606             for (i2_3i = 1; i2_3i - (1) <= floor((1) - (1)); i2_3i = i2_3i + 1 ) {
     5913            jmi_array_ref_1(_for_loop_variables_i2, 3) = 0;
     5914            jmi_array_ref_1(_for_loop_variables_i1, 3) = floor((1) - (1));
     5915            for (i2_3i = 1; jmi_array_val_1(_for_loop_variables_i2, 3) <= jmi_array_val_1(_for_loop_variables_i1, 3); i2_3i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 3)))) {
    56075916                JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, jmi_array_rec_1(jmi_array_rec_1(temp_1_a, i1_1i)->x, i2_3i)->y, 1, 1, 1)
    5608                 for (i3_4i = 1; i3_4i - (1) <= floor((1) - (1)); i3_4i = i3_4i + 1 ) {
     5917                jmi_array_ref_1(_for_loop_variables_i2, 4) = 0;
     5918                jmi_array_ref_1(_for_loop_variables_i1, 4) = floor((1) - (1));
     5919                for (i3_4i = 1; jmi_array_val_1(_for_loop_variables_i2, 4) <= jmi_array_val_1(_for_loop_variables_i1, 4); i3_4i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 4)))) {
    56095920                    jmi_array_ref_1(jmi_array_rec_1(jmi_array_rec_1(temp_1_a, i1_1i)->x, i2_3i)->y, i3_4i) = jmi_array_val_1(jmi_array_rec_1(temp_2_a, i2_3i)->y, i3_4i);
    56105921                }
    56115922            }
    56125923        }
    5613         for (i1_5i = 1; i1_5i - (1) <= floor((m_v) - (1)); i1_5i = i1_5i + 1 ) {
    5614             for (i2_6i = 1; i2_6i - (1) <= floor((1) - (1)); i2_6i = i2_6i + 1 ) {
    5615                 for (i3_7i = 1; i3_7i - (1) <= floor((1) - (1)); i3_7i = i3_7i + 1 ) {
     5924        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     5925        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((m_v) - (1));
     5926        for (i1_5i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i1_5i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
     5927            jmi_array_ref_1(_for_loop_variables_i2, 3) = 0;
     5928            jmi_array_ref_1(_for_loop_variables_i1, 3) = floor((1) - (1));
     5929            for (i2_6i = 1; jmi_array_val_1(_for_loop_variables_i2, 3) <= jmi_array_val_1(_for_loop_variables_i1, 3); i2_6i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 3)))) {
     5930                jmi_array_ref_1(_for_loop_variables_i2, 4) = 0;
     5931                jmi_array_ref_1(_for_loop_variables_i1, 4) = floor((1) - (1));
     5932                for (i3_7i = 1; jmi_array_val_1(_for_loop_variables_i2, 4) <= jmi_array_val_1(_for_loop_variables_i1, 4); i3_7i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 4)))) {
    56165933                    jmi_array_ref_1(jmi_array_rec_1(jmi_array_rec_2(o_a, i_0i, i1_5i)->x, i2_6i)->y, i3_7i) = jmi_array_val_1(jmi_array_rec_1(jmi_array_rec_1(temp_1_a, i1_5i)->x, i2_6i)->y, i3_7i);
    56175934                }
     
    56555972    jmi_real_t i1_0i;
    56565973    jmi_real_t i1_1i;
     5974    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     5975    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    56575976    if (u_a == NULL) {
    56585977        JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, u_an, jmi_array_size(a_a, 0), 1, jmi_array_size(a_a, 0))
     
    56605979    }
    56615980    JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, temp_1_a, jmi_array_size(a_a, 0), 1, jmi_array_size(a_a, 0))
    5662     for (i1_0i = 1; i1_0i - (1) <= floor((jmi_array_size(a_a, 0)) - (1)); i1_0i = i1_0i + 1 ) {
     5981    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5982    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(a_a, 0)) - (1));
     5983    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    56635984        jmi_array_ref_1(temp_1_a, i1_0i) = jmi_array_val_1(a_a, i1_0i) + jmi_array_val_1(b_a, i1_0i);
    56645985    }
    5665     for (i1_1i = 1; i1_1i - (1) <= floor((jmi_array_size(a_a, 0)) - (1)); i1_1i = i1_1i + 1 ) {
     5986    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     5987    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(a_a, 0)) - (1));
     5988    for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    56665989        jmi_array_ref_1(u_a, i1_1i) = jmi_array_val_1(a_a, i1_1i) * func_CCodeGenTests_CUnknownArray8_l_exp1(temp_1_a);
    56675990    }
     
    56755998    JMI_DEF(REA, temp_1_v)
    56765999    jmi_real_t i1_2i;
     6000    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     6001    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    56776002    temp_1_v = 0.0;
    5678     for (i1_2i = 1; i1_2i - (1) <= floor((jmi_array_size(x_a, 0)) - (1)); i1_2i = i1_2i + 1 ) {
     6003    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     6004    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(x_a, 0)) - (1));
     6005    for (i1_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    56796006        temp_1_v = temp_1_v + jmi_array_val_1(x_a, i1_2i);
    56806007    }
     
    57176044    jmi_real_t i1_0i;
    57186045    jmi_real_t i1_1i;
     6046    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     6047    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    57196048    if (ba_a == NULL) {
    57206049        JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, ba_an, n_v, 1, n_v)
     
    57256054        ab_a = ab_an;
    57266055    }
    5727     for (i1_0i = 1; i1_0i - (1) <= floor((n_v) - (1)); i1_0i = i1_0i + 1 ) {
     6056    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     6057    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((n_v) - (1));
     6058    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    57286059        jmi_array_ref_1(ba_a, i1_0i) = 1;
    57296060    }
    5730     for (i1_1i = 1; i1_1i - (1) <= floor((jmi_array_size(ba_a, 0)) - (1)); i1_1i = i1_1i + 1 ) {
     6061    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     6062    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(ba_a, 0)) - (1));
     6063    for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    57316064        jmi_array_ref_1(ab_a, i1_1i) = jmi_array_val_1(ba_a, i1_1i);
    57326065    }
     
    58126145    JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, tmp_1, 2, 1, 2)
    58136146    r_v->x = tmp_1;
    5814     for (i1_0i = 1; i1_0i - (1) <= floor((2) - (1)); i1_0i = i1_0i + 1 ) {
     6147    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     6148    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
     6149    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     6150    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     6151    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    58156152        jmi_array_ref_1(r_v->x, i1_0i) = i1_0i;
    58166153    }
     
    58596196    jmi_real_t i1_2i;
    58606197    jmi_real_t i1_3i;
     6198    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     6199    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
    58616200    if (y_a == NULL) {
    58626201        JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, y_an, jmi_array_size(x_a, 0) * 2, 1, jmi_array_size(x_a, 0) * 2)
    58636202        y_a = y_an;
    58646203    }
    5865     for (i_0i = 1; i_0i - (1) <= floor((jmi_array_size(x_a, 0)) - (1)); i_0i = i_0i + 1 ) {
     6204    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     6205    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(x_a, 0)) - (1));
     6206    for (i_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    58666207        JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, temp_1_a, (jmi_array_size(x_a, 0) + JMI_MAX_EQUATION(i_0i, 0.0)), 1, jmi_array_size(x_a, 0) + JMI_MAX_EQUATION(i_0i, 0.0))
    5867         for (i1_1i = 1; i1_1i - (1) <= floor((jmi_array_size(x_a, 0)) - (1)); i1_1i = i1_1i + 1 ) {
     6208        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     6209        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((jmi_array_size(x_a, 0)) - (1));
     6210        for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    58686211            jmi_array_ref_1(temp_1_a, i1_1i) = jmi_array_val_1(x_a, i1_1i);
    58696212        }
    5870         for (i1_2i = 1; i1_2i - (1) <= floor((JMI_MAX_EQUATION(i_0i, 0.0)) - (1)); i1_2i = i1_2i + 1 ) {
     6213        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     6214        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((JMI_MAX_EQUATION(i_0i, 0.0)) - (1));
     6215        for (i1_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i1_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    58716216            jmi_array_ref_1(temp_1_a, i1_2i + jmi_array_size(x_a, 0)) = i1_2i;
    58726217        }
    5873         for (i1_3i = 1; i1_3i - (1) <= floor((jmi_array_size(x_a, 0) * 2) - (1)); i1_3i = i1_3i + 1 ) {
     6218        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     6219        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((jmi_array_size(x_a, 0) * 2) - (1));
     6220        for (i1_3i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i1_3i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    58746221            jmi_array_ref_1(y_a, i1_3i) = jmi_array_val_1(temp_1_a, i1_3i);
    58756222        }
     
    61976544    JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, tmp_1, 2, 1, 2)
    61986545    x_v->a = tmp_1;
     6546    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     6547    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    61996548    JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, temp_1_a, 2, 1, 2)
    62006549    jmi_array_ref_1(temp_1_a, 1) = 1;
    62016550    jmi_array_ref_1(temp_1_a, 2) = 2;
    6202     for (i1_0i = 1; i1_0i - (1) <= floor((2) - (1)); i1_0i = i1_0i + 1 ) {
     6551    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     6552    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     6553    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    62036554        jmi_array_ref_1(x_v->a, i1_0i) = jmi_array_val_1(temp_1_a, i1_0i);
    62046555    }
     
    62616612    jmi_real_t i1_0i;
    62626613    jmi_real_t i2_1i;
     6614    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     6615    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
    62636616    JMI_ARRAY_INIT_1(STACK, A_1_r, A_1_ra, x_a, 3, 1, 3)
    62646617    JMI_ARRAY_INIT_1(STACK, B_0_r, B_0_ra, tmp_1, 2, 1, 2)
     
    62846637    jmi_array_rec_1(temp_1_a, 3)->a = 7;
    62856638    jmi_array_rec_1(temp_1_a, 3)->b = temp_4_a;
    6286     for (i1_0i = 1; i1_0i - (1) <= floor((3) - (1)); i1_0i = i1_0i + 1 ) {
     6639    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     6640    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     6641    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    62876642        jmi_array_rec_1(x_a, i1_0i)->a = jmi_array_rec_1(temp_1_a, i1_0i)->a;
    6288         for (i2_1i = 1; i2_1i - (1) <= floor((2) - (1)); i2_1i = i2_1i + 1 ) {
     6643        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     6644        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((2) - (1));
     6645        for (i2_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i2_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    62896646            jmi_array_rec_1(jmi_array_rec_1(x_a, i1_0i)->b, i2_1i)->c = jmi_array_rec_1(jmi_array_rec_1(temp_1_a, i1_0i)->b, i2_1i)->c;
    62906647        }
     
    64536810        x_v = x_vn;
    64546811    }
     6812    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     6813    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    64556814    JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, temp_1_a, 2, 1, 2)
    64566815    jmi_array_ref_1(temp_1_a, 1) = 1;
    64576816    jmi_array_ref_1(temp_1_a, 2) = 2;
    6458     for (i1_0i = 1; i1_0i - (1) <= floor((2) - (1)); i1_0i = i1_0i + 1 ) {
     6817    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     6818    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     6819    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    64596820        jmi_array_ref_1(x_v->a, i1_0i) = jmi_array_val_1(temp_1_a, i1_0i);
    64606821    }
     
    65206881    jmi_real_t i1_0i;
    65216882    jmi_real_t i2_1i;
     6883    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     6884    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
    65226885    if (x_a == NULL) {
    65236886        JMI_ARRAY_INIT_1(STACK, A_1_r, A_1_ra, x_an, 3, 1, 3)
     
    65466909    jmi_array_rec_1(temp_1_a, 3)->a = 7;
    65476910    jmi_array_rec_1(temp_1_a, 3)->b = temp_4_a;
    6548     for (i1_0i = 1; i1_0i - (1) <= floor((3) - (1)); i1_0i = i1_0i + 1 ) {
     6911    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     6912    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     6913    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    65496914        jmi_array_rec_1(x_a, i1_0i)->a = jmi_array_rec_1(temp_1_a, i1_0i)->a;
    6550         for (i2_1i = 1; i2_1i - (1) <= floor((2) - (1)); i2_1i = i2_1i + 1 ) {
     6915        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     6916        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((2) - (1));
     6917        for (i2_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i2_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    65516918            jmi_array_rec_1(jmi_array_rec_1(x_a, i1_0i)->b, i2_1i)->c = jmi_array_rec_1(jmi_array_rec_1(temp_1_a, i1_0i)->b, i2_1i)->c;
    65526919        }
     
    67987165    JMI_DEF(REA, o_v)
    67997166    jmi_real_t i1_0i;
    6800     for (i1_0i = 1; i1_0i - (1) <= floor((3) - (1)); i1_0i = i1_0i + 1 ) {
     7167    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     7168    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
     7169    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     7170    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((3) - (1));
     7171    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    68017172        if (COND_EXP_EQ(2.0, jmi_array_size(jmi_array_rec_1(x_a, i1_0i)->b, 0), JMI_TRUE, JMI_FALSE) == JMI_FALSE) {
    68027173            jmi_assert_failed(\"Mismatching sizes in function 'CCodeGenTests.CRecordDecl16.f', component 'x[i1].b', dimension '1'\", JMI_ASSERT_ERROR);
     
    1344013811    JMI_DEF(INT_EXT, tmp_6)
    1344113812    extern void dgesv_(int*, int*, double*, int*, int*, double*, int*, int*);
     13813    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     13814    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
    1344213815    if (x_a == NULL) {
    1344313816        JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, x_an, jmi_array_size(A_a, 0), 1, jmi_array_size(A_a, 0))
    1344413817        x_a = x_an;
    1344513818    }
    13446     for (i1_0i = 1; i1_0i - (1) <= floor((jmi_array_size(A_a, 0)) - (1)); i1_0i = i1_0i + 1 ) {
     13819    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     13820    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(A_a, 0)) - (1));
     13821    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    1344713822        jmi_array_ref_1(x_a, i1_0i) = jmi_array_val_1(b_a, i1_0i);
    1344813823    }
    1344913824    JMI_ARRAY_INIT_2(HEAP, jmi_real_t, jmi_array_t, Awork_a, jmi_array_size(A_a, 0) * jmi_array_size(A_a, 0), 2, jmi_array_size(A_a, 0), jmi_array_size(A_a, 0))
    13450     for (i1_1i = 1; i1_1i - (1) <= floor((jmi_array_size(A_a, 0)) - (1)); i1_1i = i1_1i + 1 ) {
    13451         for (i2_2i = 1; i2_2i - (1) <= floor((jmi_array_size(A_a, 0)) - (1)); i2_2i = i2_2i + 1 ) {
     13825    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     13826    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(A_a, 0)) - (1));
     13827    for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     13828        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     13829        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((jmi_array_size(A_a, 0)) - (1));
     13830        for (i2_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i2_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    1345213831            jmi_array_ref_2(Awork_a, i1_1i, i2_2i) = jmi_array_val_2(A_a, i1_1i, i2_2i);
    1345313832        }
     
    1353113910    JMI_DEF(INT_EXT, tmp_6)
    1353213911    extern void dgesv_(int*, int*, double*, int*, int*, double*, int*, int*);
     13912    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     13913    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
    1353313914    if (X_a == NULL) {
    1353413915        JMI_ARRAY_INIT_2(HEAP, jmi_real_t, jmi_array_t, X_an, jmi_array_size(A_a, 0) * jmi_array_size(B_a, 1), 2, jmi_array_size(A_a, 0), jmi_array_size(B_a, 1))
    1353513916        X_a = X_an;
    1353613917    }
    13537     for (i1_0i = 1; i1_0i - (1) <= floor((jmi_array_size(A_a, 0)) - (1)); i1_0i = i1_0i + 1 ) {
    13538         for (i2_1i = 1; i2_1i - (1) <= floor((jmi_array_size(B_a, 1)) - (1)); i2_1i = i2_1i + 1 ) {
     13918    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     13919    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(A_a, 0)) - (1));
     13920    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     13921        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     13922        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((jmi_array_size(B_a, 1)) - (1));
     13923        for (i2_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i2_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    1353913924            jmi_array_ref_2(X_a, i1_0i, i2_1i) = jmi_array_val_2(B_a, i1_0i, i2_1i);
    1354013925        }
    1354113926    }
    1354213927    JMI_ARRAY_INIT_2(HEAP, jmi_real_t, jmi_array_t, Awork_a, jmi_array_size(A_a, 0) * jmi_array_size(A_a, 0), 2, jmi_array_size(A_a, 0), jmi_array_size(A_a, 0))
    13543     for (i1_2i = 1; i1_2i - (1) <= floor((jmi_array_size(A_a, 0)) - (1)); i1_2i = i1_2i + 1 ) {
    13544         for (i2_3i = 1; i2_3i - (1) <= floor((jmi_array_size(A_a, 0)) - (1)); i2_3i = i2_3i + 1 ) {
     13928    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     13929    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(A_a, 0)) - (1));
     13930    for (i1_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     13931        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     13932        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((jmi_array_size(A_a, 0)) - (1));
     13933        for (i2_3i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i2_3i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    1354513934            jmi_array_ref_2(Awork_a, i1_2i, i2_3i) = jmi_array_val_2(A_a, i1_2i, i2_3i);
    1354613935        }
     
    1585116240    jmi_real_t i1_0i;
    1585216241    JMI_ARR(STACK, jmi_string_t, jmi_string_array_t, tmp_1, 2, 1)
     16242    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     16243    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    1585316244    JMI_ARRAY_INIT_1(STACK, jmi_string_t, jmi_string_array_t, s_a, 2, 1, 2)
    1585416245    y_v = x_v;
     
    1585616247    JMI_ASG(STR, jmi_array_ref_1(temp_1_a, 1), \"str\")
    1585716248    JMI_ASG(STR, jmi_array_ref_1(temp_1_a, 2), \"str\")
    15858     for (i1_0i = 1; i1_0i - (1) <= floor((2) - (1)); i1_0i = i1_0i + 1 ) {
     16249    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     16250    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((2) - (1));
     16251    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    1585916252        JMI_ASG(STR, jmi_array_ref_1(s_a, i1_0i), jmi_array_val_1(temp_1_a, i1_0i))
    1586016253    }
     
    1587616269    JMI_ARR(HEAP, jmi_string_t, jmi_string_array_t, o_a, -1, 1)
    1587716270    jmi_real_t i1_1i;
     16271    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     16272    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    1587816273    JMI_ARRAY_INIT_1(HEAP, jmi_string_t, jmi_string_array_t, o_a, jmi_array_size(s_a, 0), 1, jmi_array_size(s_a, 0))
    15879     for (i1_1i = 1; i1_1i - (1) <= floor((jmi_array_size(s_a, 0)) - (1)); i1_1i = i1_1i + 1 ) {
     16274    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     16275    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(s_a, 0)) - (1));
     16276    for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    1588016277        JMI_ASG(STR, jmi_array_ref_1(o_a, i1_1i), jmi_array_val_1(s_a, i1_1i))
    1588116278    }
     
    1592516322    jmi_real_t i1_1i;
    1592616323    JMI_ARR(HEAP, jmi_string_t, jmi_string_array_t, tmp_1, -1, 1)
     16324    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     16325    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    1592716326    JMI_ARRAY_INIT_1(HEAP, jmi_string_t, jmi_string_array_t, s_a, n_v, 1, n_v)
    1592816327    y_v = x_v;
    1592916328    JMI_ARRAY_INIT_1(HEAP, jmi_string_t, jmi_string_array_t, temp_1_a, JMI_MAX_EQUATION(n_v, 0.0), 1, JMI_MAX_EQUATION(n_v, 0.0))
    15930     for (i1_0i = 1; i1_0i - (1) <= floor((JMI_MAX_EQUATION(n_v, 0.0)) - (1)); i1_0i = i1_0i + 1 ) {
     16329    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     16330    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((JMI_MAX_EQUATION(n_v, 0.0)) - (1));
     16331    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    1593116332        JMI_ASG(STR, jmi_array_ref_1(temp_1_a, i1_0i), \"str\")
    1593216333    }
    15933     for (i1_1i = 1; i1_1i - (1) <= floor((n_v) - (1)); i1_1i = i1_1i + 1 ) {
     16334    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     16335    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((n_v) - (1));
     16336    for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    1593416337        JMI_ASG(STR, jmi_array_ref_1(s_a, i1_1i), jmi_array_val_1(temp_1_a, i1_1i))
    1593516338    }
     
    1595116354    JMI_ARR(HEAP, jmi_string_t, jmi_string_array_t, o_a, -1, 1)
    1595216355    jmi_real_t i1_2i;
     16356    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     16357    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    1595316358    JMI_ARRAY_INIT_1(HEAP, jmi_string_t, jmi_string_array_t, o_a, jmi_array_size(s_a, 0), 1, jmi_array_size(s_a, 0))
    15954     for (i1_2i = 1; i1_2i - (1) <= floor((jmi_array_size(s_a, 0)) - (1)); i1_2i = i1_2i + 1 ) {
     16359    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     16360    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(s_a, 0)) - (1));
     16361    for (i1_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    1595516362        JMI_ASG(STR, jmi_array_ref_1(o_a, i1_2i), jmi_array_val_1(s_a, i1_2i))
    1595616363    }
     
    1772518132    jmi_real_t i2_2i;
    1772618133    jmi_real_t i1_3i;
     18134    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     18135    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    1772718136    JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, temp_2_a, jmi_array_size(x_a, 0), 1, jmi_array_size(x_a, 0))
    17728     for (i2_0i = 1; i2_0i - (1) <= floor((jmi_array_size(x_a, 0)) - (1)); i2_0i = i2_0i + 1 ) {
     18137    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     18138    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(x_a, 0)) - (1));
     18139    for (i2_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i2_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    1772918140        jmi_array_ref_1(temp_2_a, i2_0i) = jmi_array_val_2(x_a, i2_0i, 1);
    1773018141    }
    1773118142    JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, temp_3_a, jmi_array_size(x_a, 0), 1, jmi_array_size(x_a, 0))
    17732     for (i2_1i = 1; i2_1i - (1) <= floor((jmi_array_size(x_a, 0)) - (1)); i2_1i = i2_1i + 1 ) {
     18143    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     18144    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(x_a, 0)) - (1));
     18145    for (i2_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i2_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    1773318146        jmi_array_ref_1(temp_3_a, i2_1i) = jmi_array_val_2(x_a, i2_1i, 1);
    1773418147    }
    1773518148    JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, temp_3_a, jmi_array_size(x_a, 0), 1, jmi_array_size(x_a, 0))
    17736     for (i2_2i = 1; i2_2i - (1) <= floor((jmi_array_size(x_a, 0)) - (1)); i2_2i = i2_2i + 1 ) {
     18149    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     18150    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(x_a, 0)) - (1));
     18151    for (i2_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i2_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    1773718152        jmi_array_ref_1(temp_3_a, i2_2i) = jmi_array_val_2(x_a, i2_2i, 1);
    1773818153    }
     
    1774018155    func_CCodeGenTests_FuncInitOrder_f_def1(temp_2_a, temp_4_a);
    1774118156    temp_1_v = 0.0;
    17742     for (i1_3i = 1; i1_3i - (1) <= floor((func_CCodeGenTests_FuncInitOrder_g_exp2(temp_3_a)) - (1)); i1_3i = i1_3i + 1 ) {
     18157    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     18158    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((func_CCodeGenTests_FuncInitOrder_g_exp2(temp_3_a)) - (1));
     18159    for (i1_3i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_3i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    1774318160        temp_1_v = temp_1_v + jmi_array_val_1(temp_4_a, i1_3i);
    1774418161    }
     
    1775918176    JMI_ARR(HEAP, jmi_real_t, jmi_array_t, y_an, -1, 1)
    1776018177    jmi_real_t i1_4i;
     18178    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     18179    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    1776118180    if (y_a == NULL) {
    1776218181        JMI_ARRAY_INIT_1(HEAP, jmi_real_t, jmi_array_t, y_an, func_CCodeGenTests_FuncInitOrder_g_exp2(x_a), 1, func_CCodeGenTests_FuncInitOrder_g_exp2(x_a))
     
    1776618185        jmi_assert_failed(\"Mismatching sizes in CCodeGenTests.FuncInitOrder.f\", JMI_ASSERT_ERROR);
    1776718186    }
    17768     for (i1_4i = 1; i1_4i - (1) <= floor((func_CCodeGenTests_FuncInitOrder_g_exp2(x_a)) - (1)); i1_4i = i1_4i + 1 ) {
     18187    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     18188    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((func_CCodeGenTests_FuncInitOrder_g_exp2(x_a)) - (1));
     18189    for (i1_4i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_4i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    1776918190        jmi_array_ref_1(y_a, i1_4i) = 0;
    1777018191    }
     
    1777818199    JMI_DEF(REA, temp_1_v)
    1777918200    jmi_real_t i1_5i;
     18201    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     18202    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    1778018203    temp_1_v = 0.0;
    17781     for (i1_5i = 1; i1_5i - (1) <= floor((jmi_array_size(x_a, 0)) - (1)); i1_5i = i1_5i + 1 ) {
     18204    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     18205    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(x_a, 0)) - (1));
     18206    for (i1_5i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_5i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    1778218207        temp_1_v = temp_1_v + jmi_array_val_1(x_a, i1_5i);
    1778318208    }
  • branches/dev-cw-2719/Compiler/ModelicaMiddleEnd/test/modelica/Differentiation.mo

    r14143 r14175  
    31123112    JMI_ARR(STACK, R_0_r, R_0_ra, y_an, 1, 1)
    31133113    jmi_real_t i1_0i;
     3114    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     3115    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    31143116    if (y_a == NULL) {
    31153117        JMI_ARRAY_INIT_1(STACK, R_0_r, R_0_ra, y_an, 1, 1, 1)
    31163118        y_a = y_an;
    31173119    }
    3118     for (i1_0i = 1; i1_0i - (1) <= floor((1) - (1)); i1_0i = i1_0i + 1 ) {
     3120    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3121    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((1) - (1));
     3122    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    31193123        jmi_array_rec_1(y_a, i1_0i)->x = jmi_array_rec_1(x_a, i1_0i)->x;
    31203124    }
     
    31283132    JMI_ARR(STACK, R_0_r, R_0_ra, y_a, 1, 1)
    31293133    jmi_real_t i1_1i;
     3134    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 1)
     3135    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 1)
    31303136    JMI_ARRAY_INIT_1(STACK, R_0_r, R_0_ra, y_a, 1, 1, 1)
    31313137    if (_der_y_a == NULL) {
     
    31333139        _der_y_a = _der_y_an;
    31343140    }
    3135     for (i1_1i = 1; i1_1i - (1) <= floor((1) - (1)); i1_1i = i1_1i + 1 ) {
     3141    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3142    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((1) - (1));
     3143    for (i1_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    31363144        jmi_array_rec_1(_der_y_a, i1_1i)->x = jmi_array_rec_1(_der_x_a, i1_1i)->x;
    31373145        jmi_array_rec_1(y_a, i1_1i)->x = jmi_array_rec_1(x_a, i1_1i)->x;
     
    31863194    jmi_real_t i2_1i;
    31873195    jmi_real_t i1_2i;
     3196    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     3197    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
    31883198    JMI_ARRAY_INIT_1(STACK, R_0_r, R_0_ra, rt_a, 1, 1, 1)
    31893199    JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, tmp_1, 1, 1, 1)
     
    31913201    JMI_ARRAY_INIT_1(STACK, R_0_r, R_0_ra, temp_1_a, 1, 1, 1)
    31923202    *jmi_array_rec_1(temp_1_a, 1) = *jmi_array_rec_1(r_a, 1);
    3193     for (i1_0i = 1; i1_0i - (1) <= floor((1) - (1)); i1_0i = i1_0i + 1 ) {
    3194         for (i2_1i = 1; i2_1i - (1) <= floor((1) - (1)); i2_1i = i2_1i + 1 ) {
     3203    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3204    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((1) - (1));
     3205    for (i1_0i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_0i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     3206        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     3207        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((1) - (1));
     3208        for (i2_1i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i2_1i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    31953209            jmi_array_ref_1(jmi_array_rec_1(rt_a, i1_0i)->x, i2_1i) = jmi_array_val_1(jmi_array_rec_1(temp_1_a, i1_0i)->x, i2_1i);
    31963210        }
    31973211    }
    31983212    y_v = jmi_array_val_1(jmi_array_rec_1(rt_a, 1)->x, 1);
    3199     for (i1_2i = 1; i1_2i - (1) <= floor((jmi_array_size(r_a, 0)) - (1)); i1_2i = i1_2i + 1 ) {
     3213    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3214    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(r_a, 0)) - (1));
     3215    for (i1_2i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_2i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    32003216        if (COND_EXP_EQ(1.0, jmi_array_size(jmi_array_rec_1(r_a, i1_2i)->x, 0), JMI_TRUE, JMI_FALSE) == JMI_FALSE) {
    32013217            jmi_assert_failed(\"Mismatching sizes in function 'Differentiation.AlgorithmDifferentiation.RecordArrayTemp1.e', component 'r[i1].x', dimension '1'\", JMI_ASSERT_ERROR);
     
    32203236    jmi_real_t i1_4i;
    32213237    jmi_real_t i2_5i;
     3238    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     3239    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
    32223240    if (y_a == NULL) {
    32233241        JMI_ARRAY_INIT_1(STACK, R_0_r, R_0_ra, y_an, 1, 1, 1)
     
    32263244        y_a = y_an;
    32273245    }
    3228     for (i1_3i = 1; i1_3i - (1) <= floor((1) - (1)); i1_3i = i1_3i + 1 ) {
     3246    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3247    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((1) - (1));
     3248    for (i1_3i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_3i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    32293249        if (COND_EXP_EQ(1.0, jmi_array_size(jmi_array_rec_1(x_a, i1_3i)->x, 0), JMI_TRUE, JMI_FALSE) == JMI_FALSE) {
    32303250            jmi_assert_failed(\"Mismatching sizes in function 'Differentiation.AlgorithmDifferentiation.RecordArrayTemp1.F', component 'x[i1].x', dimension '1'\", JMI_ASSERT_ERROR);
    32313251        }
    32323252    }
    3233     for (i1_4i = 1; i1_4i - (1) <= floor((1) - (1)); i1_4i = i1_4i + 1 ) {
    3234         for (i2_5i = 1; i2_5i - (1) <= floor((1) - (1)); i2_5i = i2_5i + 1 ) {
     3253    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3254    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((1) - (1));
     3255    for (i1_4i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_4i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     3256        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     3257        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((1) - (1));
     3258        for (i2_5i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i2_5i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    32353259            jmi_array_ref_1(jmi_array_rec_1(y_a, i1_4i)->x, i2_5i) = jmi_array_val_1(jmi_array_rec_1(x_a, i1_4i)->x, i2_5i);
    32363260        }
     
    32533277    jmi_real_t i2_7i;
    32543278    jmi_real_t i1_8i;
     3279    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     3280    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
    32553281    JMI_ARRAY_INIT_1(STACK, R_0_r, R_0_ra, rt_a, 1, 1, 1)
    32563282    JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, tmp_1, 1, 1, 1)
     
    32633289    *jmi_array_rec_1(_der_temp_1_a, 1) = *jmi_array_rec_1(_der_r_a, 1);
    32643290    *jmi_array_rec_1(temp_1_a, 1) = *jmi_array_rec_1(r_a, 1);
    3265     for (i1_6i = 1; i1_6i - (1) <= floor((1) - (1)); i1_6i = i1_6i + 1 ) {
    3266         for (i2_7i = 1; i2_7i - (1) <= floor((1) - (1)); i2_7i = i2_7i + 1 ) {
     3291    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3292    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((1) - (1));
     3293    for (i1_6i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_6i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     3294        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     3295        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((1) - (1));
     3296        for (i2_7i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i2_7i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    32673297            jmi_array_ref_1(jmi_array_rec_1(_der_rt_a, i1_6i)->x, i2_7i) = jmi_array_val_1(jmi_array_rec_1(_der_temp_1_a, i1_6i)->x, i2_7i);
    32683298            jmi_array_ref_1(jmi_array_rec_1(rt_a, i1_6i)->x, i2_7i) = jmi_array_val_1(jmi_array_rec_1(temp_1_a, i1_6i)->x, i2_7i);
     
    32713301    _der_y_v = jmi_array_val_1(jmi_array_rec_1(_der_rt_a, 1)->x, 1);
    32723302    y_v = jmi_array_val_1(jmi_array_rec_1(rt_a, 1)->x, 1);
    3273     for (i1_8i = 1; i1_8i - (1) <= floor((jmi_array_size(r_a, 0)) - (1)); i1_8i = i1_8i + 1 ) {
     3303    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3304    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((jmi_array_size(r_a, 0)) - (1));
     3305    for (i1_8i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_8i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    32743306        if (COND_EXP_EQ(1.0, jmi_array_size(jmi_array_rec_1(r_a, i1_8i)->x, 0), JMI_TRUE, JMI_FALSE) == JMI_FALSE) {
    32753307            jmi_assert_failed(\"Mismatching sizes in function 'Differentiation.AlgorithmDifferentiation.RecordArrayTemp1.e', component 'r[i1].x', dimension '1'\", JMI_ASSERT_ERROR);
     
    32963328    jmi_real_t i1_10i;
    32973329    jmi_real_t i2_11i;
     3330    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i1, 1, 2)
     3331    JMI_ARR(STACK, jmi_int_t, jmi_int_array_t, _for_loop_variables_i2, 1, 2)
    32983332    JMI_ARRAY_INIT_1(STACK, R_0_r, R_0_ra, y_a, 1, 1, 1)
    32993333    JMI_ARRAY_INIT_1(STACK, jmi_real_t, jmi_array_t, tmp_2, 1, 1, 1)
     
    33053339        _der_y_a = _der_y_an;
    33063340    }
    3307     for (i1_9i = 1; i1_9i - (1) <= floor((1) - (1)); i1_9i = i1_9i + 1 ) {
     3341    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3342    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((1) - (1));
     3343    for (i1_9i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_9i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
    33083344        if (COND_EXP_EQ(1.0, jmi_array_size(jmi_array_rec_1(x_a, i1_9i)->x, 0), JMI_TRUE, JMI_FALSE) == JMI_FALSE) {
    33093345            jmi_assert_failed(\"Mismatching sizes in function 'Differentiation.AlgorithmDifferentiation.RecordArrayTemp1.F', component 'x[i1].x', dimension '1'\", JMI_ASSERT_ERROR);
    33103346        }
    33113347    }
    3312     for (i1_10i = 1; i1_10i - (1) <= floor((1) - (1)); i1_10i = i1_10i + 1 ) {
    3313         for (i2_11i = 1; i2_11i - (1) <= floor((1) - (1)); i2_11i = i2_11i + 1 ) {
     3348    jmi_array_ref_1(_for_loop_variables_i2, 1) = 0;
     3349    jmi_array_ref_1(_for_loop_variables_i1, 1) = floor((1) - (1));
     3350    for (i1_10i = 1; jmi_array_val_1(_for_loop_variables_i2, 1) <= jmi_array_val_1(_for_loop_variables_i1, 1); i1_10i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 1)))) {
     3351        jmi_array_ref_1(_for_loop_variables_i2, 2) = 0;
     3352        jmi_array_ref_1(_for_loop_variables_i1, 2) = floor((1) - (1));
     3353        for (i2_11i = 1; jmi_array_val_1(_for_loop_variables_i2, 2) <= jmi_array_val_1(_for_loop_variables_i1, 2); i2_11i = 1 + (++(jmi_array_ref_1(_for_loop_variables_i2, 2)))) {
    33143354            jmi_array_ref_1(jmi_array_rec_1(_der_y_a, i1_10i)->x, i2_11i) = jmi_array_val_1(jmi_array_rec_1(_der_x_a, i1_10i)->x, i2_11i);
    33153355            jmi_array_ref_1(jmi_array_rec_1(y_a, i1_10i)->x, i2_11i) = jmi_array_val_1(jmi_array_rec_1(x_a, i1_10i)->x, i2_11i);
Note: See TracChangeset for help on using the changeset viewer.