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
3f9156da
Commit
3f9156da
authored
Aug 19, 2014
by
Matthias Braun
Browse files
amd64: support frame entities as immediates
parent
664cda3b
Changes
1
Hide whitespace changes
Inline
Side-by-side
ir/be/amd64/amd64_transform.c
View file @
3f9156da
...
...
@@ -617,9 +617,7 @@ static void perform_address_matching(ir_node *ptr, int *arity,
{
x86_address_t
maddr
;
memset
(
&
maddr
,
0
,
sizeof
(
maddr
));
x86_create_address_mode
(
&
maddr
,
ptr
,
x86_create_am_normal
);
assert
(
maddr
.
frame_entity
==
NULL
);
if
(
maddr
.
base
!=
NULL
)
{
int
base_input
=
(
*
arity
)
++
;
...
...
@@ -635,7 +633,16 @@ static void perform_address_matching(ir_node *ptr, int *arity,
}
else
{
addr
->
index_input
=
NO_INPUT
;
}
addr
->
immediate
.
entity
=
maddr
.
entity
;
if
(
maddr
.
frame_entity
!=
NULL
)
{
assert
(
maddr
.
entity
==
NULL
);
addr
->
immediate
.
entity
=
maddr
.
frame_entity
;
/* not supported yet */
assert
(
!
is_parameter_entity
(
maddr
.
frame_entity
)
||
get_entity_parameter_number
(
maddr
.
frame_entity
)
!=
IR_VA_START_PARAMETER_NUMBER
);
}
else
{
addr
->
immediate
.
entity
=
maddr
.
entity
;
}
addr
->
immediate
.
offset
=
maddr
.
offset
;
addr
->
log_scale
=
maddr
.
scale
;
}
...
...
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