Commit fc3b1992 authored by Tobias Rapp's avatar Tobias Rapp
Browse files

amd64: Stop using (incorrect) upper_bits_clean for arithmetic operations

parent 00c31936
......@@ -1996,6 +1996,15 @@ static void amd64_register_transformers(void)
be_set_transform_proj_function(op_Start, gen_Proj_Start);
be_set_transform_proj_function(op_Store, gen_Proj_Store);
be_set_transform_proj_function(op_Switch, be_duplicate_node);
/* upper_bits_clean can't handle different register sizes, so
* arithmetic operations are problematic. Disable them. */
be_set_upper_bits_clean_function(op_And, NULL);
be_set_upper_bits_clean_function(op_Eor, NULL);
be_set_upper_bits_clean_function(op_Mux, NULL);
be_set_upper_bits_clean_function(op_Or, NULL);
be_set_upper_bits_clean_function(op_Shr, NULL);
be_set_upper_bits_clean_function(op_Shrs, NULL);
}
static ir_type *amd64_get_between_type(void)
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment