mirror of
https://github.com/iritmaximus/ttk91-compiler.git
synced 2026-10-12 19:13:40 +03:00
implemented many intel asm printing functions
This commit is contained in:
@@ -26,6 +26,7 @@ struct expr {
|
||||
|
||||
struct expr * expr_create(expr_t kind, struct label *l, struct oper *o, struct ttk_register *f_arg, struct value *s_arg, struct comment *c, struct expr *n);
|
||||
int expr_print(struct expr *e);
|
||||
int expr_print_intel_asm(struct expr *e);
|
||||
|
||||
void expr_copy(struct expr *orig, struct expr *copy);
|
||||
|
||||
|
||||
@@ -15,6 +15,7 @@ struct label {
|
||||
};
|
||||
|
||||
struct label * label_create(label_t kind, char* name, int value);
|
||||
int label_print_intel_asm(struct label *l);
|
||||
int label_print(struct label *l);
|
||||
|
||||
struct label * label_create_const(char* name);
|
||||
|
||||
@@ -20,6 +20,7 @@ struct oper {
|
||||
|
||||
struct oper * oper_create(oper_t kind, char* oper_name);
|
||||
int oper_print(struct oper *o);
|
||||
int oper_print_intel_asm(struct oper *o);
|
||||
|
||||
struct oper * oper_create_data(char* oper_name);
|
||||
struct oper * oper_create_arithmetic(char* oper_name);
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#include "expr.h"
|
||||
|
||||
int program_print(struct expr *program);
|
||||
int program_print_intel_asm(struct expr *program);
|
||||
void program_free(struct expr *program);
|
||||
|
||||
@@ -18,6 +18,7 @@ struct ttk_register * ttk_register_create_register(char* name);
|
||||
struct ttk_register * ttk_register_create_stack_register(char* name);
|
||||
|
||||
int ttk_register_print(struct ttk_register *ttk_reg);
|
||||
int ttk_register_print_intel_asm(struct ttk_register *ttk_reg);
|
||||
|
||||
void ttk_register_free(struct ttk_register *ttk_reg);
|
||||
|
||||
|
||||
@@ -50,7 +50,10 @@ struct pure_value * pure_value_create_label(struct label *l);
|
||||
|
||||
struct pure_value * pure_value_create(value_t kind, struct ttk_register *ttk_reg, int num, struct label *l);
|
||||
addr_mode_t parse_addr_mode(char* addr_mode);
|
||||
int pure_value_print(struct pure_value *p_v);
|
||||
int value_print(struct value *v);
|
||||
int pure_value_print_intel_asm(struct pure_value *p_v);
|
||||
int value_print_intel_asm(struct value *v);
|
||||
|
||||
|
||||
void value_free(struct value *v);
|
||||
|
||||
Reference in New Issue
Block a user