acc/include/cg.h
2023-02-07 10:32:03 +08:00

30 lines
466 B
C

#ifndef ACC_CG_H
#define ACC_CG_H
#include "ast.h"
extern FILE *Outfile;
// cg.c
void cg_main(int target, struct ASTnode *rt);
void open_outputfile(char *filename);
void cg_unload(void);
// cg_x64.c
void cgx64_generate(struct ASTnode *rt);
// cg_llvm.c
void cgllvm_generate(struct ASTnode *rt);
// cg_ast.c
void cgast_generate(struct ASTnode *rt);
// targets
enum {
CG_X64, // Intel x86_64
CG_LLVM, // LLVM IR
CG_AST, // Abstruct Syntax Tree
};
#endif