summaryrefslogtreecommitdiffhomepage
path: root/ir/be/riscv/riscv_new_nodes_t.h
blob: 8df67d6094c9d8672dfab02543091daa798a796a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/*
 * This file is part of libFirm.
 * Copyright (C) 2018 Christoph Mallon.
 */

/**
 * @file
 * @brief   Internal declarations used by gen_new_nodes.c
 */
#ifndef FIRM_BE_RISCV_RISCV_NEW_NODES_T_H
#define FIRM_BE_RISCV_RISCV_NEW_NODES_T_H

#include <stdio.h>
#include <inttypes.h>

#include "firm_types.h"
#include "irop.h"

void riscv_dump_node(FILE *F, const ir_node *n, dump_reason_t reason);

int riscv_attrs_equal(ir_node const *a, ir_node const *b);
int riscv_immediate_attrs_equal(ir_node const *a, ir_node const *b);
int riscv_cond_attrs_equal(ir_node const *a, ir_node const *b);
int riscv_switch_attrs_equal(ir_node const *a, ir_node const *b);

void riscv_set_attr_imm(ir_node *res, ir_entity *entity, int32_t immediate_value);

#endif