mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-08-09 11:25:55 +00:00
Use a module to group calling convention values, too.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45236 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -55,11 +55,13 @@ module Visibility = struct
|
|||||||
| Protected
|
| Protected
|
||||||
end
|
end
|
||||||
|
|
||||||
let ccc = 0
|
module CallConv = struct
|
||||||
let fastcc = 8
|
let c = 0
|
||||||
let coldcc = 9
|
let fast = 8
|
||||||
let x86_stdcallcc = 64
|
let cold = 9
|
||||||
let x86_fastcallcc = 65
|
let x86_stdcall = 64
|
||||||
|
let x86_fastcall = 65
|
||||||
|
end
|
||||||
|
|
||||||
module Icmp = struct
|
module Icmp = struct
|
||||||
type t =
|
type t =
|
||||||
|
@@ -95,16 +95,18 @@ end
|
|||||||
(* The following calling convention values may be accessed with
|
(* The following calling convention values may be accessed with
|
||||||
[function_call_conv f] and [set_function_call_conv conv f]. Calling
|
[function_call_conv f] and [set_function_call_conv conv f]. Calling
|
||||||
conventions are open-ended. *)
|
conventions are open-ended. *)
|
||||||
val ccc : int (** [ccc] is the C calling convention. **)
|
module CallConv : sig
|
||||||
val fastcc : int (** [fastcc] is the calling convention to allow LLVM
|
val c : int (** [c] is the C calling convention. **)
|
||||||
|
val fast : int (** [fast] is the calling convention to allow LLVM
|
||||||
maximum optimization opportunities. Use only with
|
maximum optimization opportunities. Use only with
|
||||||
internal linkage. **)
|
internal linkage. **)
|
||||||
val coldcc : int (** [coldcc] is the calling convention for
|
val cold : int (** [cold] is the calling convention for
|
||||||
callee-save. **)
|
callee-save. **)
|
||||||
val x86_stdcallcc : int (** [x86_stdcallcc] is the familiar stdcall calling
|
val x86_stdcall : int (** [x86_stdcall] is the familiar stdcall calling
|
||||||
convention from C. **)
|
convention from C. **)
|
||||||
val x86_fastcallcc : int (** [x86_fastcallcc] is the familiar fastcall calling
|
val x86_fastcall : int (** [x86_fastcall] is the familiar fastcall calling
|
||||||
convention from C. **)
|
convention from C. **)
|
||||||
|
end
|
||||||
|
|
||||||
(** The predicate for an integer comparison ([icmp]) instruction.
|
(** The predicate for an integer comparison ([icmp]) instruction.
|
||||||
See the [llvm::ICmpInst::Predicate] enumeration. **)
|
See the [llvm::ICmpInst::Predicate] enumeration. **)
|
||||||
|
@@ -496,9 +496,9 @@ let test_functions () =
|
|||||||
*)
|
*)
|
||||||
group "callconv";
|
group "callconv";
|
||||||
let fn = define_function "Fn5" ty m in
|
let fn = define_function "Fn5" ty m in
|
||||||
insist (ccc = function_call_conv fn);
|
insist (CallConv.c = function_call_conv fn);
|
||||||
set_function_call_conv fastcc fn;
|
set_function_call_conv CallConv.fast fn;
|
||||||
insist (fastcc = function_call_conv fn);
|
insist (CallConv.fast = function_call_conv fn);
|
||||||
ignore (build_unreachable (builder_at_end (entry_block fn)));
|
ignore (build_unreachable (builder_at_end (entry_block fn)));
|
||||||
|
|
||||||
begin group "collector";
|
begin group "collector";
|
||||||
|
Reference in New Issue
Block a user