1dfc58e3bcfcb8f37796b2ca1c289dd202f26d03cSylvestre Ledru(*===-- llvm_bitwriter.ml - LLVM OCaml Interface ----------------*- C++ -*-===* 28ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen * 38ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen * The LLVM Compiler Infrastructure 48ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen * 5234d529e582963ad4b5d83b911cd057fe99d1435Chris Lattner * This file is distributed under the University of Illinois Open Source 6234d529e582963ad4b5d83b911cd057fe99d1435Chris Lattner * License. See LICENSE.TXT for details. 78ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen * 88ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen *===----------------------------------------------------------------------=== 98ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen * 10dfc58e3bcfcb8f37796b2ca1c289dd202f26d03cSylvestre Ledru * This interface provides an OCaml API for the LLVM intermediate 118ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen * representation, the classes in the VMCore library. 128ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen * 138ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen *===----------------------------------------------------------------------===*) 148ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 158ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 168ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(* Writes the bitcode for module the given path. Returns true if successful. *) 178ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal write_bitcode_file : Llvm.llmodule -> string -> bool 188ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen = "llvm_write_bitcode_file" 19e623050048e56a512e77c28b69925e7dc1efa6adErick Tryzelaar 20e623050048e56a512e77c28b69925e7dc1efa6adErick Tryzelaarexternal write_bitcode_to_fd : ?unbuffered:bool -> Llvm.llmodule 21e623050048e56a512e77c28b69925e7dc1efa6adErick Tryzelaar -> Unix.file_descr -> bool 22e623050048e56a512e77c28b69925e7dc1efa6adErick Tryzelaar = "llvm_write_bitcode_to_fd" 23e623050048e56a512e77c28b69925e7dc1efa6adErick Tryzelaar 24e623050048e56a512e77c28b69925e7dc1efa6adErick Tryzelaarlet output_bitcode ?unbuffered channel m = 25e623050048e56a512e77c28b69925e7dc1efa6adErick Tryzelaar write_bitcode_to_fd ?unbuffered m (Unix.descr_of_out_channel channel) 26