16#include "iroptimize.h"
104FIRM_API
void be_main(FILE *output,
const char *compilation_unit_name);
void be_set_after_transform_func(after_transform_func func)
Sets a callback that is called after each transformation step in be_lower_for_target().
asm_constraint_flags_t be_parse_asm_constraints(const char *constraints)
parse assembler constraint strings and returns flags (so the frontend knows which operands are inputs...
void be_dwarf_set_compilation_directory(const char *directory)
Sets working directory of the compiler (or directory where the compiler searched for sources) for dwa...
void be_main(FILE *output, const char *compilation_unit_name)
Main interface to the frontend.
void be_lower_for_target(void)
Lowers current program for the target architecture.
int be_is_valid_clobber(const char *clobber)
tests whether a string is a valid clobber in an ASM instruction
asm_constraint_flags_t
flags categorizing assembler constraint specifications
void be_dwarf_set_source_language(dwarf_source_language language)
Sets source language for dwarf debug information.
dwarf_source_language
Dwarf source language codes.
void(* after_transform_func)(ir_graph *irg, const char *name)
@ ASM_CONSTRAINT_FLAG_MODIFIER_COMMUTATIVE
This operand and the following operand are commutative.
@ ASM_CONSTRAINT_FLAG_NO_SUPPORT
the constraint is not supported yet by libFirm (but valid in gcc)
@ ASM_CONSTRAINT_FLAG_NONE
no constraints
@ ASM_CONSTRAINT_FLAG_MODIFIER_WRITE
The input is also written to.
@ ASM_CONSTRAINT_FLAG_SUPPORTS_MEMOP
input/output can be read/written to/from a memory address
@ ASM_CONSTRAINT_FLAG_MODIFIER_EARLYCLOBBER
the value is modified before all inputs to the asm block are handled.
@ ASM_CONSTRAINT_FLAG_SUPPORTS_ANY
input/output can be in a register, in memory or an immediate
@ ASM_CONSTRAINT_FLAG_MODIFIER_READ
the input is read
@ ASM_CONSTRAINT_FLAG_INVALID
invalid constraint (due to parse error)
@ ASM_CONSTRAINT_FLAG_SUPPORTS_REGISTER
input/output can be in a register
@ ASM_CONSTRAINT_FLAG_SUPPORTS_IMMEDIATE
input can be encoded as an immediate number
struct ir_graph ir_graph
Procedure Graph.