Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
Zwinkau
libfirm
Commits
901af1c4
Commit
901af1c4
authored
Feb 26, 2016
by
Christoph Mallon
Browse files
amd64: Give node attribute structs a tag.
parent
01090080
Changes
1
Hide whitespace changes
Inline
Side-by-side
ir/be/amd64/amd64_nodes_attr.h
View file @
901af1c4
...
...
@@ -24,7 +24,7 @@ enum amd64_arch_irn_flags_t {
};
/** instruction data size. Keep sorted! */
typedef
enum
{
typedef
enum
amd64_insn_size_t
{
INSN_SIZE_8
,
INSN_SIZE_16
,
INSN_SIZE_32
,
...
...
@@ -33,7 +33,7 @@ typedef enum {
INSN_SIZE_128
,
}
amd64_insn_size_t
;
typedef
enum
{
typedef
enum
amd64_segment_selector_t
{
AMD64_SEGMENT_DEFAULT
,
AMD64_SEGMENT_CS
,
AMD64_SEGMENT_SS
,
...
...
@@ -43,7 +43,7 @@ typedef enum {
AMD64_SEGMENT_GS
,
}
amd64_segment_selector_t
;
typedef
enum
{
typedef
enum
amd64_op_mode_t
{
AMD64_OP_NONE
,
AMD64_OP_ADDR
,
AMD64_OP_REG
,
...
...
@@ -61,13 +61,13 @@ typedef enum {
AMD64_OP_CC
,
}
amd64_op_mode_t
;
typedef
struct
{
typedef
struct
amd64_imm64_t
{
ir_entity
*
entity
;
int64_t
offset
;
ENUMBF
(
x86_immediate_kind_t
)
kind
:
8
;
}
amd64_imm64_t
;
typedef
struct
{
typedef
struct
amd64_addr_t
{
x86_imm32_t
immediate
;
uint8_t
base_input
;
uint8_t
index_input
;
...
...
@@ -77,18 +77,18 @@ typedef struct {
ENUMBF
(
x86_addr_variant_t
)
variant
:
3
;
}
amd64_addr_t
;
typedef
struct
{
typedef
struct
amd64_attr_t
{
except_attr
exc
;
/**< the exception attribute. MUST be the first one. */
amd64_op_mode_t
op_mode
;
}
amd64_attr_t
;
typedef
struct
{
typedef
struct
amd64_addr_attr_t
{
amd64_attr_t
base
;
ENUMBF
(
amd64_insn_size_t
)
size
:
3
;
amd64_addr_t
addr
;
}
amd64_addr_attr_t
;
typedef
struct
{
typedef
struct
amd64_binop_addr_attr_t
{
amd64_addr_attr_t
base
;
union
{
uint8_t
reg_input
;
...
...
@@ -96,47 +96,47 @@ typedef struct {
}
u
;
}
amd64_binop_addr_attr_t
;
typedef
struct
{
typedef
struct
amd64_shift_attr_t
{
amd64_attr_t
base
;
ENUMBF
(
amd64_insn_size_t
)
size
:
3
;
uint8_t
immediate
;
}
amd64_shift_attr_t
;
typedef
struct
{
typedef
struct
amd64_movimm_attr_t
{
amd64_attr_t
base
;
ENUMBF
(
amd64_insn_size_t
)
size
:
3
;
amd64_imm64_t
immediate
;
}
amd64_movimm_attr_t
;
typedef
struct
{
typedef
struct
amd64_cc_attr_t
{
amd64_attr_t
base
;
x86_condition_code_t
cc
;
ENUMBF
(
amd64_insn_size_t
)
size
:
3
;
}
amd64_cc_attr_t
;
typedef
struct
{
typedef
struct
amd64_switch_jmp_attr_t
{
amd64_addr_attr_t
base
;
const
ir_switch_table
*
table
;
ir_entity
*
table_entity
;
}
amd64_switch_jmp_attr_t
;
typedef
struct
{
typedef
struct
amd64_call_addr_attr_t
{
amd64_addr_attr_t
base
;
unsigned
n_reg_results
;
/**< number of results in registers */
ir_type
*
call_tp
;
}
amd64_call_addr_attr_t
;
typedef
struct
{
typedef
struct
amd64_x87_attr_t
{
amd64_attr_t
base
;
x87_attr_t
x87
;
}
amd64_x87_attr_t
;
typedef
struct
{
typedef
struct
amd64_x87_addr_attr_t
{
amd64_addr_attr_t
base
;
x87_attr_t
x87
;
}
amd64_x87_addr_attr_t
;
typedef
struct
{
typedef
struct
amd64_x87_binop_addr_attr_t
{
amd64_binop_addr_attr_t
base
;
x87_attr_t
x87
;
}
amd64_x87_binop_addr_attr_t
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment