Пример #1
0
def p_update_offset(p):
    """Update_Offset : """
    var = sem.get_variable(p[-2])
    type = var[1][0]
    expr.add_operator("#")
    for x in range(state.arr_current_dim - 1):
        expr.add_operator("+")
        expr.generate_quad(2)  # Generates quads to sum all the indices
    if type[0] == "i" or type[0] == "f":
        sem.fill_symbol_table_constant(4, "int", 4)
        expr.add_operand(sem.get_variable(4))
        expr.add_operator("*")
        expr.generate_quad(1)
    expr.pop_operator()
Пример #2
0
def p_gen_quad_5(p):
    """Gen_Quad5 : """
    expr.generate_quad(5)
Пример #3
0
def p_gen_quad_4(p):
    """Gen_Quad4 : """
    expr.generate_quad(4)
Пример #4
0
def p_gen_quad_3(p):
    """Gen_Quad3 : """
    expr.generate_quad(3)
Пример #5
0
def p_gen_quad_2(p):
    """Gen_Quad2 : """
    expr.generate_quad(2)
Пример #6
0
def p_gen_quad_1(p):
    """Gen_Quad1 : """
    expr.generate_quad(1)
Пример #7
0
def p_gen_quad_0(p):
    """Gen_Quad0 : """
    expr.generate_quad(0)