Commit fe53f12c authored by Michael Beck's avatar Michael Beck
Browse files

removed wrong instructions with traps on overflow

parent 986fcfc8
......@@ -156,22 +156,12 @@ $comment_string = "#";
add => {
op_flags => "C",
reg_req => { in => [ "general_purpose", "general_purpose" ], out => [ "general_purpose" ] },
emit => '
if (mode_is_signed(get_irn_mode(n)))
2. add %D1, %S1, %S2
else
2. addu %D1, %S1, %S2
'
emit => '. addu %D1, %S1, %S2'
},
addi => {
reg_req => { in => [ "general_purpose" ], out => [ "general_purpose" ] },
emit => '
if (mode_is_signed(get_irn_mode(n)))
2. addi %D1, %S1, %C
else
2. addiu %D1, %S1, %C
',
emit => '. addiu %D1, %S1, %C',
cmp_attr => 'return attr_a->tv != attr_b->tv;',
},
......@@ -191,7 +181,7 @@ div => {
reg_req => { in => [ "general_purpose", "general_purpose" ], out => [ "none", "none", "none", "none" ] },
emit => '
mips_attr_t *attr = get_mips_attr(n);
if(attr->modes.original_mode->sign) {
if (attr->modes.original_mode->sign) {
2. div %S1, %S2
} else {
2. divu %S1, %S2
......@@ -218,10 +208,7 @@ nor => {
not => {
reg_req => { in => [ "general_purpose" ], out => [ "general_purpose" ] },
emit => '
assert(get_mode_size_bits(get_irn_mode(n)) == 32);
. nor %D1, %S1, $zero
'
emit => '. nor %D1, %S1, $zero'
},
or => {
......@@ -296,11 +283,6 @@ sllv => {
},
sub => {
reg_req => { in => [ "general_purpose", "general_purpose" ], out => [ "general_purpose" ] },
emit => '. sub %D1, %S1, %S2'
},
subu => {
reg_req => { in => [ "general_purpose", "general_purpose" ], out => [ "general_purpose" ] },
emit => '. subu %D1, %S1, %S2',
},
......
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