OSDN Git Service

Remove malloc and free from the ocaml bindings.
authorErick Tryzelaar <idadesub@users.sourceforge.net>
Sun, 28 Feb 2010 05:51:09 +0000 (05:51 +0000)
committerErick Tryzelaar <idadesub@users.sourceforge.net>
Sun, 28 Feb 2010 05:51:09 +0000 (05:51 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97367 91177308-0d34-0410-b5e6-96231b3b80d8

bindings/ocaml/llvm/llvm.ml
bindings/ocaml/llvm/llvm.mli
bindings/ocaml/llvm/llvm_ocaml.c
test/Bindings/Ocaml/vmcore.ml

index 7e4acbf..2714af1 100644 (file)
@@ -745,15 +745,10 @@ external build_not : llvalue -> string -> llbuilder -> llvalue
                    = "llvm_build_not"
 
 (*--... Memory .............................................................--*)
-external build_malloc : lltype -> string -> llbuilder -> llvalue
-                      = "llvm_build_malloc"
-external build_array_malloc : lltype -> llvalue -> string -> llbuilder ->
-                              llvalue = "llvm_build_array_malloc"
 external build_alloca : lltype -> string -> llbuilder -> llvalue
                       = "llvm_build_alloca"
 external build_array_alloca : lltype -> llvalue -> string -> llbuilder ->
                               llvalue = "llvm_build_array_alloca"
-external build_free : llvalue -> llbuilder -> llvalue = "llvm_build_free"
 external build_load : llvalue -> string -> llbuilder -> llvalue
                     = "llvm_build_load"
 external build_store : llvalue -> llvalue -> llbuilder -> llvalue
index 4f28ae6..9afddf1 100644 (file)
@@ -1628,20 +1628,6 @@ external build_not : llvalue -> string -> llbuilder -> llvalue
 
 (** {7 Memory} *)
 
-(** [build_malloc ty name b] creates a
-    [%name = malloc %ty]
-    instruction at the position specified by the instruction builder [b].
-    See the method [llvm::LLVMBuilder::CreateAlloca]. *)
-external build_malloc : lltype -> string -> llbuilder -> llvalue
-                      = "llvm_build_malloc"
-
-(** [build_array_malloc ty n name b] creates a
-    [%name = malloc %ty, %n]
-    instruction at the position specified by the instruction builder [b].
-    See the method [llvm::LLVMBuilder::CreateMalloc]. *)
-external build_array_malloc : lltype -> llvalue -> string -> llbuilder ->
-                              llvalue = "llvm_build_array_malloc"
-
 (** [build_alloca ty name b] creates a
     [%name = alloca %ty]
     instruction at the position specified by the instruction builder [b].
@@ -1656,12 +1642,6 @@ external build_alloca : lltype -> string -> llbuilder -> llvalue
 external build_array_alloca : lltype -> llvalue -> string -> llbuilder ->
                               llvalue = "llvm_build_array_alloca"
 
-(** [build_free v b] creates a
-    [free %v]
-    instruction at the position specified by the instruction builder [b].
-    See the method [llvm::LLVMBuilder::CreateFree]. *)
-external build_free : llvalue -> llbuilder -> llvalue = "llvm_build_free"
-
 (** [build_load v name b] creates a
     [%name = load %v]
     instruction at the position specified by the instruction builder [b].
index 86492d7..23b74dd 100644 (file)
@@ -1204,18 +1204,6 @@ CAMLprim LLVMValueRef llvm_build_not(LLVMValueRef X,
 /*--... Memory .............................................................--*/
 
 /* lltype -> string -> llbuilder -> llvalue */
-CAMLprim LLVMValueRef llvm_build_malloc(LLVMTypeRef Ty,
-                                        value Name, value B) {
-  return LLVMBuildMalloc(Builder_val(B), Ty, String_val(Name));
-}
-
-/* lltype -> llvalue -> string -> llbuilder -> llvalue */
-CAMLprim LLVMValueRef llvm_build_array_malloc(LLVMTypeRef Ty, LLVMValueRef Size,
-                                              value Name, value B) {
-  return LLVMBuildArrayMalloc(Builder_val(B), Ty, Size, String_val(Name));
-}
-
-/* lltype -> string -> llbuilder -> llvalue */
 CAMLprim LLVMValueRef llvm_build_alloca(LLVMTypeRef Ty,
                                         value Name, value B) {
   return LLVMBuildAlloca(Builder_val(B), Ty, String_val(Name));
@@ -1227,11 +1215,6 @@ CAMLprim LLVMValueRef llvm_build_array_alloca(LLVMTypeRef Ty, LLVMValueRef Size,
   return LLVMBuildArrayAlloca(Builder_val(B), Ty, Size, String_val(Name));
 }
 
-/* llvalue -> llbuilder -> llvalue */
-CAMLprim LLVMValueRef llvm_build_free(LLVMValueRef Pointer, value B) {
-  return LLVMBuildFree(Builder_val(B), Pointer);
-}
-
 /* llvalue -> string -> llbuilder -> llvalue */
 CAMLprim LLVMValueRef llvm_build_load(LLVMValueRef Pointer,
                                       value Name, value B) {
index dd0404a..da3fa65 100644 (file)
@@ -937,21 +937,15 @@ let test_builder () =
     let bb08 = append_block context "Bb08" fn in
     let b = builder_at_end context bb08 in
 
-    (* RUN: grep {Inst20.*malloc} < %t.ll
-     * RUN: grep {Inst21.*malloc} < %t.ll
-     * RUN: grep {Inst22.*alloca.*i32 } < %t.ll
+    (* RUN: grep {Inst22.*alloca.*i32 } < %t.ll
      * RUN: grep {Inst23.*alloca.*i32.*P2} < %t.ll
-     * RUN: grep {free.*Inst20} < %t.ll
-     * RUN: grep {Inst25.*load.*Inst21} < %t.ll
+     * RUN: grep {Inst25.*load.*Inst23} < %t.ll
      * RUN: grep {store.*P2.*Inst22} < %t.ll
      * RUN: grep {Inst27.*getelementptr.*Inst23.*P2} < %t.ll
      *)
-    let inst20 = build_malloc i8_type "Inst20" b in
-    let inst21 = build_array_malloc i8_type p1 "Inst21" b in
     let inst22 = build_alloca i32_type "Inst22" b in
     let inst23 = build_array_alloca i32_type p2 "Inst23" b in
-          ignore(build_free inst20 b);
-          ignore(build_load inst21 "Inst25" b);
+          ignore(build_load inst23 "Inst25" b);
           ignore(build_store p2 inst22 b);
           ignore(build_gep inst23 [| p2 |] "Inst27" b);
           ignore(build_unreachable b)