X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Famd64%2Famd64_emitter.h;h=f67914673da7426a2581e952f06174eb1c6d07e2;hb=163610634238dac25cc05ea4f3037e6fd05f463d;hp=2e0b757e72ccc51a993e896815c7aea5910ca399;hpb=11504f3de97874076d40a912f568f994d150a2a1;p=libfirm diff --git a/ir/be/amd64/amd64_emitter.h b/ir/be/amd64/amd64_emitter.h index 2e0b757e7..f67914673 100644 --- a/ir/be/amd64/amd64_emitter.h +++ b/ir/be/amd64/amd64_emitter.h @@ -1,26 +1,11 @@ /* - * Copyright (C) 1995-2008 University of Karlsruhe. All right reserved. - * * This file is part of libFirm. - * - * This file may be distributed and/or modified under the terms of the - * GNU General Public License version 2 as published by the Free Software - * Foundation and appearing in the file LICENSE.GPL included in the - * packaging of this file. - * - * Licensees holding valid libFirm Professional Edition licenses may use - * this file in accordance with the libFirm Commercial License. - * Agreement provided with the Software. - * - * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE - * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE. + * Copyright (C) 2012 University of Karlsruhe. */ /** * @file * @brief declarations for emit functions - * @version $Id: amd64_emitter.h 26317 2009-08-05 10:53:46Z matze $ */ #ifndef FIRM_BE_amd64_amd64_EMITTER_H #define FIRM_BE_amd64_amd64_EMITTER_H @@ -29,21 +14,31 @@ #include "irnode.h" #include "debug.h" -#include "../bearch.h" -#include "../beemitter.h" +#include "bearch.h" +#include "beemitter.h" #include "bearch_amd64_t.h" -void amd64_emit_register(const arch_register_t *reg); -void amd64_emit_source_register(const ir_node *node, int pos); -void amd64_emit_dest_register(const ir_node *node, int pos); -void amd64_emit_immediate(const ir_node *node); -void amd64_emit_fp_offset(const ir_node *node); - -int get_amd64_reg_nr(ir_node *irn, int posi, int in_out); -const char *get_amd64_in_reg_name(ir_node *irn, int pos); - +/** + * fmt parameter output + * ---- ---------------------- --------------------------------------------- + * %% % + * %C immediate value + * %Dx destination register x + * %E ir_entity const* entity + * %L control flow target + * %O offset + * %R arch_register_t const* register + * %Sx source register x + * %S* , int source register + * %d signed int signed int + * %s char const* string + * %u unsigned int unsigned int + * + * x starts at 0 + */ +void amd64_emitf(ir_node const *node, char const *fmt, ...); -void amd64_gen_routine(const amd64_code_gen_t *cg, ir_graph *irg); +void amd64_gen_routine(ir_graph *irg); #endif