1 line
24 KiB
JavaScript
1 line
24 KiB
JavaScript
|
Search.setIndex({"docnames": ["api/Lib", "api/Lib.Allocator", "api/Lib.Errors", "api/Lib.FunctionData", "api/Lib.LinearCode", "api/Lib.Operands", "api/Lib.RiscV", "api/Lib.Statement", "api/modules", "index"], "filenames": ["api/Lib.rst", "api/Lib.Allocator.rst", "api/Lib.Errors.rst", "api/Lib.FunctionData.rst", "api/Lib.LinearCode.rst", "api/Lib.Operands.rst", "api/Lib.RiscV.rst", "api/Lib.Statement.rst", "api/modules.rst", "index.rst"], "titles": ["Lib package", "Lib.Allocator module", "Lib.Errors module", "Lib.FunctionData module", "Lib.LinearCode module", "Lib.Operands module", "Lib.RiscV module", "Lib.Statement module", "MiniC", "Welcome to MiniC\u2019s documentation!"], "terms": {"alloc": [0, 4, 5, 8], "prepar": [0, 1, 9], "replac": [0, 1, 4, 5, 7, 9], "rewritecod": [0, 1, 9], "naivealloc": [0, 1, 8, 9], "error": [0, 8, 9], "minicruntimeerror": [0, 2, 8, 9], "minicinternalerror": [0, 2, 8, 9], "minicunsupportederror": [0, 2, 8, 9], "minictypeerror": [0, 2, 8, 9], "allocationerror": [0, 2, 8, 9], "functiondata": [0, 1, 4, 8, 9], "get_nam": [0, 3, 9], "fresh_tmp": [0, 3, 5, 9], "fresh_offset": [0, 3, 9], "get_offset": [0, 3, 5, 9], "fresh_label": [0, 3, 9], "get_label_div_by_zero": [0, 3, 9], "linearcod": [0, 1, 3, 8, 9], "fdata": [0, 1, 3, 4, 9], "add_instruct": [0, 4, 9], "iter_stat": [0, 1, 4, 9], "get_instruct": [0, 4, 9], "add_label": [0, 4, 9], "add_com": [0, 4, 9], "add_instruction_println_int": [0, 4, 9], "print_cod": [0, 4, 9], "print_dot": [0, 4, 9], "operand": [0, 1, 3, 6, 7, 8, 9], "condit": [0, 5, 6, 7, 8, 9], "negat": [0, 5, 9], "function": [0, 3, 4, 5, 6, 7, 8, 9], "dataloc": [0, 4, 5, 8, 9], "regist": [0, 1, 5, 8, 9], "zero": [0, 5, 8, 9], "ra": [0, 5, 8, 9], "sp": [0, 5, 8, 9], "gp": [0, 5, 8, 9], "tp": [0, 5, 8, 9], "A": [0, 5, 7, 8, 9], "": [0, 4, 5, 8], "t": [0, 5, 8, 9], "a0": [0, 5, 8, 9], "a1": [0, 5, 8, 9], "fp": [0, 3, 5, 8, 9], "gp_reg": [0, 5, 8, 9], "offset": [0, 3, 5, 8, 9], "immedi": [0, 5, 6, 8, 9], "temporari": [0, 1, 3, 4, 5, 8], "get_alloced_loc": [0, 5, 9], "temporarypool": [0, 1, 3, 5, 8, 9], "get_all_temp": [0, 5, 9], "add_tmp": [0, 5, 9], "set_temp_alloc": [0, 1, 5, 9], "renam": [0, 5, 7, 8, 9], "fresh": [0, 3, 5, 9], "defin": [0, 1, 3, 5, 6, 7, 9], "copi": [0, 5, 9], "riscv": [0, 3, 4, 5, 7, 8, 9], "call": [0, 1, 4, 5, 6, 7, 8, 9], "jump": [0, 6, 7, 8, 9], "conditional_jump": [0, 6, 8, 9], "add": [0, 1, 4, 5, 6, 8, 9], "mul": [0, 6, 8, 9], "div": [0, 6, 8, 9], "rem": [0, 6, 8, 9], "sub": [0, 6, 8, 9], "land": [0, 6, 8, 9], "lor": [0, 6, 8, 9], "xor": [0, 6, 8, 9], "li": [0, 6, 8, 9], "mv": [0, 6, 8, 9], "ld": [0, 6, 8, 9], "sd": [0, 6, 8, 9], "statement": [0, 8, 9], "regset_to_str": [0, 7, 8, 9], "us": [0, 3, 5, 7, 9], "substitut": [0, 7, 9], "with_arg": [0, 7, 9], "printin": [0, 7, 9], "comment": [0, 4, 7, 8, 9], "label": [0, 3, 4, 6, 7, 8, 9], "name": [0, 3, 4, 5, 7, 9], "instruct": [0, 1, 4, 6, 7, 8, 9], "ins": [0, 7, 9], "is_read_onli": [0, 7, 9], "arg": [0, 7, 9], "instru3a": [0, 4, 6, 7, 8, 9], "absolutejump": [0, 4, 6, 7, 8, 9], "target": [0, 7, 9], "conditionaljump": [0, 4, 7, 8, 9], "cond": [0, 6, 7, 9], "op1": [0, 6, 7, 9], "op2": [0, 6, 7, 9], "thi": [1, 3, 5, 6, 7], "file": [1, 3, 4, 5], "base": [1, 2, 3, 4, 5, 7], "class": [1, 3, 4, 5, 7, 9], "na\u00efv": 1, "implement": [1, 9], "sourc": [1, 2, 3, 4, 5, 6, 7, 9], "object": [1, 3, 4, 5, 7, 9], "gener": [1, 4, 5], "naiv": [1, 9], "allinmem": 1, "smart": 1, "all": [1, 5, 9], "code": [1, 4, 6, 9], "actual": [1, 5], "data": [1, 5, 9], "locat": [1, 5, 7], "i": [1, 3, 4, 5, 6, 7], "done": 1, "two": 1, "step": 1, "first": [1, 7], "respons": 1, "map": [1, 5], "from": [1, 5, 7], "where": [1, 7], "thei": 1, "should": [1, 7, 9], "store": [1, 3], "memori": [1, 3, 5, 9], "Then": 1, "each": [1, 4, 9], "order": 1, "previous": 1, "assign": 1, "possibli": 1, "some": [1, 3, 4, 9], "befor": [1, 9], "after": 1, "concret": 1, "return": [1, 3, 4, 5, 7], "list": [1, 4, 5, 7, 9], "origin": 1, "The": [1, 4, 5, 7, 9], "iter": [1, 4], "over": [1, 4], "handl": 1, "transpar": 1, "none": [1, 4, 5, 7], "old_instr": 1, "transform": 1, "an": [1, 4,
|