/**
* @file
* @brief Function prototypes for the assembler ir node constructors.
- * @version $Id: TEMPLATE_new_nodes.h 26549 2009-09-18 17:48:23Z matze $
+ * @author Hannes Rapp, Matthias Braun
+ * @version $Id$
*/
#ifndef FIRM_BE_SPARC_SPARC_NEW_NODES_H
#define FIRM_BE_SPARC_SPARC_NEW_NODES_H
+#include <stdbool.h>
#include "sparc_nodes_attr.h"
-/***************************************************************************************************
- * _ _ _ __ _ _ _ _
- * | | | | | | / / | | | | | | | |
- * __ _| |_| |_ _ __ ___ ___| |_ / /_ _ ___| |_ _ __ ___ ___| |_| |__ ___ __| |___
- * / _` | __| __| '__| / __|/ _ \ __| / / _` |/ _ \ __| | '_ ` _ \ / _ \ __| '_ \ / _ \ / _` / __|
- * | (_| | |_| |_| | \__ \ __/ |_ / / (_| | __/ |_ | | | | | | __/ |_| | | | (_) | (_| \__ \
- * \__,_|\__|\__|_| |___/\___|\__/_/ \__, |\___|\__| |_| |_| |_|\___|\__|_| |_|\___/ \__,_|___/
- * __/ |
- * |___/
- ***************************************************************************************************/
-
/**
* Returns the attributes of an sparc node.
*/
sparc_attr_t *get_sparc_attr(ir_node *node);
const sparc_attr_t *get_sparc_attr_const(const ir_node *node);
+bool sparc_has_load_store_attr(const ir_node *node);
sparc_load_store_attr_t *get_sparc_load_store_attr(ir_node *node);
const sparc_load_store_attr_t *get_sparc_load_store_attr_const(const ir_node *node);
-sparc_symconst_attr_t *get_sparc_symconst_attr(ir_node *node);
-const sparc_symconst_attr_t *get_sparc_symconst_attr_const(const ir_node *node);
-
sparc_jmp_cond_attr_t *get_sparc_jmp_cond_attr(ir_node *node);
const sparc_jmp_cond_attr_t *get_sparc_jmp_cond_attr_const(const ir_node *node);
-sparc_jmp_switch_attr_t *get_sparc_jmp_switch_attr(ir_node *node);
-const sparc_jmp_switch_attr_t *get_sparc_jmp_switch_attr_const(const ir_node *node);
-
-sparc_cmp_attr_t *get_sparc_cmp_attr(ir_node *node);
-const sparc_cmp_attr_t *get_sparc_cmp_attr_const(const ir_node *node);
-
-/**
- * Returns the argument register requirements of an sparc node.
- */
-const arch_register_req_t **get_sparc_in_req_all(const ir_node *node);
+sparc_switch_jmp_attr_t *get_sparc_switch_jmp_attr(ir_node *node);
+const sparc_switch_jmp_attr_t *get_sparc_switch_jmp_attr_const(const ir_node *node);
-/**
- * Returns the argument register requirements of an sparc node.
- */
-const arch_register_req_t *get_sparc_in_req(const ir_node *node, int pos);
+sparc_fp_attr_t *get_sparc_fp_attr(ir_node *node);
+const sparc_fp_attr_t *get_sparc_fp_attr_const(const ir_node *node);
-/**
- * Sets the IN register requirements at position pos.
- */
-void set_sparc_req_in(ir_node *node, const arch_register_req_t *req, int pos);
+sparc_fp_conv_attr_t *get_sparc_fp_conv_attr(ir_node *node);
+const sparc_fp_conv_attr_t *get_sparc_fp_conv_attr_const(const ir_node *node);
/* Include the generated headers */
#include "gen_sparc_new_nodes.h"