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
0058b497
Commit
0058b497
authored
Oct 04, 2008
by
Michael Beck
Browse files
- fixed r22480: Proj numbers are now different
[r22483]
parent
4be314ae
Changes
1
Hide whitespace changes
Inline
Side-by-side
ir/be/ia32/ia32_transform.c
View file @
0058b497
...
@@ -1179,29 +1179,28 @@ static ir_node *gen_Mul(ir_node *node) {
...
@@ -1179,29 +1179,28 @@ static ir_node *gen_Mul(ir_node *node) {
*
*
* @return the created ia32 Mulh node
* @return the created ia32 Mulh node
*/
*/
static
ir_node
*
gen_Mulh
(
ir_node
*
node
)
static
ir_node
*
gen_Mulh
(
ir_node
*
node
)
{
{
ir_node
*
block
=
get_nodes_block
(
node
);
ir_node
*
block
=
get_nodes_block
(
node
);
ir_node
*
new_block
=
be_transform_node
(
block
);
ir_node
*
new_block
=
be_transform_node
(
block
);
dbg_info
*
dbgi
=
get_irn_dbg_info
(
node
);
dbg_info
*
dbgi
=
get_irn_dbg_info
(
node
);
ir_node
*
op1
=
get_Mulh_left
(
node
);
ir_node
*
op1
=
get_Mulh_left
(
node
);
ir_node
*
op2
=
get_Mulh_right
(
node
);
ir_node
*
op2
=
get_Mulh_right
(
node
);
ir_mode
*
mode
=
get_irn_mode
(
node
);
ir_mode
*
mode
=
get_irn_mode
(
node
);
construct_binop_func
*
func
;
ir_node
*
new_node
;
ir_node
*
new_node
;
ir_node
*
proj_res_high
;
ir_node
*
proj_res_high
;
func
=
mode_is_signed
(
mode
)
?
new_rd_ia32_IMul1OP
:
new_rd_ia32_Mul
;
if
(
mode_is_signed
(
mode
))
{
new_node
=
gen_binop
(
node
,
op1
,
op2
,
func
,
match_commutative
|
match_am
);
new_node
=
gen_binop
(
node
,
op1
,
op2
,
new_rd_ia32_IMul1OP
,
match_commutative
|
match_am
);
proj_res_high
=
new_rd_Proj
(
dbgi
,
current_ir_graph
,
new_block
,
new_node
,
assert
(
pn_ia32_IMul1OP_res_high
==
pn_ia32_Mul_res_high
);
proj_res_high
=
new_rd_Proj
(
dbgi
,
current_ir_graph
,
new_block
,
new_node
,
mode_Iu
,
pn_ia32_IMul1OP_res_high
);
mode_Iu
,
pn_ia32_IMul1OP_res_high
);
}
else
{
new_node
=
gen_binop
(
node
,
op1
,
op2
,
new_rd_ia32_Mul
,
match_commutative
|
match_am
);
proj_res_high
=
new_rd_Proj
(
dbgi
,
current_ir_graph
,
new_block
,
new_node
,
mode_Iu
,
pn_ia32_Mul_res_high
);
}
return
proj_res_high
;
return
proj_res_high
;
}
}
/**
/**
* Creates an ia32 And.
* Creates an ia32 And.
*
*
...
...
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