X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;ds=sidebyside;f=ast2firm.h;h=2271f66347c138708e63ca4341def99a65dcb344;hb=d7384b0b065dd6195ac6649c4d48a06905bc8fe7;hp=a9ed846ce17c1b0c9cf26a7012c35f3016770b3e;hpb=fd16b92f058181088a385c3224c8814831c006d3;p=cparser diff --git a/ast2firm.h b/ast2firm.h index a9ed846..2271f66 100644 --- a/ast2firm.h +++ b/ast2firm.h @@ -1,6 +1,6 @@ /* * This file is part of cparser. - * Copyright (C) 2007-2008 Matthias Braun + * Copyright (C) 2007-2009 Matthias Braun * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -20,11 +20,26 @@ #ifndef AST2FIRM_H #define AST2FIRM_H +#include #include "ast.h" +#include "type.h" void translation_unit_to_firm(translation_unit_t *unit); void init_ast2firm(void); void exit_ast2firm(void); +ir_mode *get_atomic_mode(atomic_type_kind_t kind); +ir_type *get_ir_type(type_t *type); + +typedef ident* (*create_ld_ident_func)(entity_t *entity); + +void set_create_ld_ident(create_ld_ident_func func); + +ir_tarval *fold_constant_to_tarval(const expression_t *expression); +void determine_enum_values(enum_type_t *type); + +extern fp_model_t firm_fp_model; +extern ir_mode *atomic_modes[ATOMIC_TYPE_LAST+1]; + #endif