projects
/
libfirm
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
backend: ProjT/Start is an anchor and explicitely transformed
[libfirm]
/
ir
/
be
/
sparc
/
sparc_spec.pl
diff --git
a/ir/be/sparc/sparc_spec.pl
b/ir/be/sparc/sparc_spec.pl
index
41330e8
..
332c253
100644
(file)
--- a/
ir/be/sparc/sparc_spec.pl
+++ b/
ir/be/sparc/sparc_spec.pl
@@
-144,8
+144,8
@@
$default_copy_attr = "sparc_copy_attr";
);
%custom_irn_flags = (
);
%custom_irn_flags = (
- modifies_flags => "sparc_arch_irn_flag_modifies_flags",
- modifies_fp_flags => "sparc_arch_irn_flag_modifies_fp_flags",
+ modifies_flags => "
(arch_irn_flags_t)
sparc_arch_irn_flag_modifies_flags",
+ modifies_fp_flags => "
(arch_irn_flags_t)
sparc_arch_irn_flag_modifies_fp_flags",
);
my %cmp_operand_constructors = (
);
my %cmp_operand_constructors = (
@@
-305,6
+305,7
@@
St => {
Save => {
emit => '. save %S0, %R1I, %D0',
outs => [ "stack" ],
Save => {
emit => '. save %S0, %R1I, %D0',
outs => [ "stack" ],
+ ins => [ "stack" ],
constructors => {
imm => {
attr => "ir_entity *immediate_entity, int32_t immediate_value",
constructors => {
imm => {
attr => "ir_entity *immediate_entity, int32_t immediate_value",
@@
-317,11
+318,13
@@
Save => {
ins => [ "stack", "increment" ],
}
},
ins => [ "stack", "increment" ],
}
},
+ mode => $mode_gp,
},
Restore => {
emit => '. restore %S0, %R1I, %D0',
outs => [ "stack" ],
},
Restore => {
emit => '. restore %S0, %R1I, %D0',
outs => [ "stack" ],
+ ins => [ "stack" ],
constructors => {
imm => {
attr => "ir_entity *immediate_entity, int32_t immediate_value",
constructors => {
imm => {
attr => "ir_entity *immediate_entity, int32_t immediate_value",
@@
-334,13
+337,15
@@
Restore => {
ins => [ "stack", "increment" ],
}
},
ins => [ "stack", "increment" ],
}
},
+ mode => $mode_gp,
},
RestoreZero => {
emit => '. restore',
},
RestoreZero => {
emit => '. restore',
- outs => [ ],
- ins => [ ],
- mode => "mode_T",
+ reg_req => { in => [ "frame_pointer" ], out => [ "sp:I|S" ] },
+ ins => [ "frame_pointer" ],
+ outs => [ "stack" ],
+ mode => $mode_gp,
},
SubSP => {
},
SubSP => {
@@
-373,8
+378,8
@@
Bicc => {
state => "pinned",
mode => "mode_T",
attr_type => "sparc_jmp_cond_attr_t",
state => "pinned",
mode => "mode_T",
attr_type => "sparc_jmp_cond_attr_t",
- attr => "
pn_Cmp pnc
, bool is_unsigned",
- init_attr => "\tinit_sparc_jmp_cond_attr(res,
pnc
, is_unsigned);",
+ attr => "
ir_relation relation
, bool is_unsigned",
+ init_attr => "\tinit_sparc_jmp_cond_attr(res,
relation
, is_unsigned);",
reg_req => { in => [ "flags" ], out => [ "none", "none" ] },
},
reg_req => { in => [ "flags" ], out => [ "none", "none" ] },
},
@@
-383,8
+388,8
@@
fbfcc => {
state => "pinned",
mode => "mode_T",
attr_type => "sparc_jmp_cond_attr_t",
state => "pinned",
mode => "mode_T",
attr_type => "sparc_jmp_cond_attr_t",
- attr => "
pn_Cmp pnc
",
- init_attr => "\tinit_sparc_jmp_cond_attr(res,
pnc
, false);",
+ attr => "
ir_relation relation
",
+ init_attr => "\tinit_sparc_jmp_cond_attr(res,
relation
, false);",
reg_req => { in => [ "fpflags" ], out => [ "none", "none" ] },
},
reg_req => { in => [ "fpflags" ], out => [ "none", "none" ] },
},