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
bb47ed07
Commit
bb47ed07
authored
Oct 04, 2007
by
Christoph Mallon
Browse files
More signed/unsigned fixes for 64bit lowering.
[r16080]
parent
d7ab1511
Changes
1
Hide whitespace changes
Inline
Side-by-side
ir/lower/lower_dw.c
View file @
bb47ed07
...
...
@@ -951,13 +951,14 @@ static void lower_Shl(ir_node *node, ir_mode *mode, lower_env_t *env) {
if
(
tarval_is_long
(
tv
)
&&
get_tarval_long
(
tv
)
>=
get_mode_size_bits
(
mode
))
{
ir_mode
*
mode_l
;
ir_node
*
block
=
get_nodes_block
(
node
);
ir_node
*
left
=
get_Shl_left
(
node
);
ir_node
*
c
;
long
shf_cnt
=
get_tarval_long
(
tv
)
-
get_mode_size_bits
(
mode
);
int
idx
=
get_irn_idx
(
left
);
left
=
env
->
entries
[
idx
]
->
low_word
;
left
=
new_r_Conv
(
irg
,
block
,
env
->
entries
[
idx
]
->
low_word
,
mode
)
;
idx
=
get_irn_idx
(
node
);
if
(
shf_cnt
>
0
)
{
...
...
@@ -966,7 +967,8 @@ static void lower_Shl(ir_node *node, ir_mode *mode, lower_env_t *env) {
}
else
{
env
->
entries
[
idx
]
->
high_word
=
left
;
}
/* if */
env
->
entries
[
idx
]
->
low_word
=
new_r_Const
(
irg
,
block
,
mode
,
get_mode_null
(
mode
));
mode_l
=
env
->
params
->
low_unsigned
;
env
->
entries
[
idx
]
->
low_word
=
new_r_Const
(
irg
,
block
,
mode_l
,
get_mode_null
(
mode_l
));
return
;
}
/* if */
...
...
Write
Preview
Supports
Markdown
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