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:
Gordon Henriksen
2007-12-20 00:13:26 +00:00
parent d6b62a5722
commit 1475142b93
3 changed files with 17 additions and 13 deletions

View File

@@ -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 =

View File

@@ -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. **)

View File

@@ -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";