diff options
Diffstat (limited to 'powerpc')
-rw-r--r-- | powerpc/Machregsaux.ml | 7 | ||||
-rw-r--r-- | powerpc/Machregsaux.mli | 1 |
2 files changed, 8 insertions, 0 deletions
diff --git a/powerpc/Machregsaux.ml b/powerpc/Machregsaux.ml index b8d7c97f..f8253ca4 100644 --- a/powerpc/Machregsaux.ml +++ b/powerpc/Machregsaux.ml @@ -49,3 +49,10 @@ let can_reserve_register r = List.mem r Conventions1.int_callee_save_regs || List.mem r Conventions1.float_callee_save_regs +let mregs_of_clobber idl = + List.fold_left + (fun l c -> + match register_by_name (Camlcoq.extern_atom c) with + | Some r -> r :: l + | None -> l) + [] idl diff --git a/powerpc/Machregsaux.mli b/powerpc/Machregsaux.mli index 400c5abb..90343b5b 100644 --- a/powerpc/Machregsaux.mli +++ b/powerpc/Machregsaux.mli @@ -15,3 +15,4 @@ val register_by_name: string -> Machregs.mreg option val can_reserve_register: Machregs.mreg -> bool val name_of_register: Machregs.mreg -> string option +val mregs_of_clobber: Camlcoq.atom list -> Machregs.mreg list |