Ricsv.AuxillaryCopyright 2025-2026, Victoria Ostrovskaya & Danil Usoltsev
SPDX-License-Identifier: LGPL-3.0-or-later
val is_caller_saved : Architecture.Riscv_backend.reg -> boolval bin_op :
Architecture.Riscv_backend.reg ->
string ->
Architecture.Riscv_backend.reg ->
Architecture.Riscv_backend.reg ->
(Architecture.Riscv_backend.instr list, string) Stdlib.resultval bin_oper_to_string : Frontend.Ast.bin_oper -> stringval vars_in_caller_saved_regs :
(string, Architecture.Riscv_backend.location, Base.String.comparator_witness)
Base.Map.t ->
(string * Architecture.Riscv_backend.reg) listval indices_of_args_to_spill :
Generator_state.state ->
Middleend.Anf.immediate list ->
int listtype call_style = | Nullary of string| CurryChain of {function_name : string;arity : int;initial_arguments : Middleend.Anf.immediate list;remaining_arguments : Middleend.Anf.immediate list;}| Direct of {function_name : string;arguments : Middleend.Anf.immediate list;}| ViaApplyNargs of {function_name : string;argument_count : int;arguments : Middleend.Anf.immediate list;}val classify_call :
argument_count:int ->
callee_arity_opt:int option ->
function_name:string ->
arguments:Middleend.Anf.immediate list ->
call_style