X-Git-Url: https://code.kerkeslager.com/?p=fur;a=blobdiff_plain;f=c_generation.py;fp=c_generation.py;h=2f4a9de1b55e6ae734a2286a5d92148f38f47c51;hp=6dd455123c12cfdab2c71d66114e68f7d16733c3;hb=b7a244b6319f5c770582283097f6184e5a6ec192;hpb=c45c61444aae3df328e4dc84acf7e31e58a1f64e diff --git a/c_generation.py b/c_generation.py index 6dd4551..2f4a9de 100644 --- a/c_generation.py +++ b/c_generation.py @@ -40,12 +40,18 @@ def generate_symbol_argument(argument): def generate_argument(instruction): try: return { + 'add': generate_size_t_argument, 'drop': generate_null_argument, 'end': generate_null_argument, 'call': generate_size_t_argument, + 'idiv': generate_size_t_argument, + 'mod': generate_size_t_argument, + 'mul': generate_size_t_argument, + 'pop': generate_symbol_argument, 'push': generate_symbol_argument, 'push_integer': generate_integer_argument, 'push_string': generate_string_argument, + 'sub': generate_size_t_argument, }[instruction.instruction](instruction.argument) except KeyError: