Data Structures | |
struct | def_s |
Represent a memory location that holds a QuakeC/Ruamoko object. More... | |
Typedefs | |
typedef struct def_s | def_t |
Represent a memory location that holds a QuakeC/Ruamoko object. More... | |
typedef enum storage_class_e | storage_class_t |
Specify the storage class of a def. More... | |
Enumerations | |
enum | storage_class_e { sc_global, sc_system, sc_extern, sc_static, sc_param, sc_local } |
Specify the storage class of a def. More... | |
Functions | |
def_t * | alias_def (def_t *def, struct type_s *type, int offset) |
Create a def that aliases another def. More... | |
int | def_offset (def_t *def) |
Convenience function for obtaining a def's actual offset. More... | |
int | def_overlap (def_t *d1, def_t *d2) |
Determine if two defs overlap. More... | |
int | def_size (def_t *def) |
Convenience function for obtaining a def's size. More... | |
void | def_to_ddef (def_t *def, ddef_t *ddef, int aux) |
Initialize a vm def from a qfcc def. More... | |
int | def_visit_all (def_t *def, int overlap, int(*visit)(def_t *, void *), void *data) |
Visit all defs that alias the given def, including itself. More... | |
void | free_def (def_t *def) |
Free a def. More... | |
void | initialize_def (struct symbol_s *sym, struct type_s *type, struct expr_s *init, struct defspace_s *space, storage_class_t storage) |
Initialize a def referenced by the given symbol. More... | |
def_t * | new_def (const char *name, struct type_s *type, struct defspace_s *space, storage_class_t storage) |
Create a new def. More... | |
Temporary defs | |
Temporary defs are used for recycling memory for tempary variables. They always have names in the form of Temporary defs are bound to the current function (current_func must be valid). They are always allocated from the funciont's local defspace. | |
def_t * | temp_def (etype_t type, int size) |
Get a temporary def. More... | |
void | free_temp_def (def_t *temp) |
Free a tempary def so it may be recycled. More... | |