Displaying 20 results from an estimated 1200 matches similar to: "[LLVMdev] Reading Instructions from Ocaml"
2011 Jun 14
0
[LLVMdev] Reading Instructions from Ocaml
On Mon, Jun 13, 2011 at 12:09 PM, Gregory Malecha <gmalecha at gmail.com> wrote:
> Hello,
Hello Gregory,
> I'm interested in the OCaml bindings, but I've been digging through them and
> it doesn't seem possible to actually write a transformation with them.
> Specifically, there are a lot of functions to build each type of
> instruction, but there doesn't seem
2011 Jul 15
2
[LLVMdev] Makefile Question
I thought it would, but it seems to be missing the CloneModule symbol (which
isn't called from anywhere in the LLVM codebase).
On Fri, Jul 15, 2011 at 7:43 AM, John Criswell <criswell at illinois.edu>wrote:
> On 7/14/11 7:36 PM, Gregory Malecha wrote:
>
> Hello,
>
> I have a question about how to set up a Makefile that generate a .so that I
> can load into opt
2011 Jul 15
0
[LLVMdev] Makefile Question
Hi Gregory,
I had a similar problem a while back, see:
http://lists.cs.uiuc.edu/pipermail/llvmdev/2010-June/032508.html for
my solution to this problem.
Basically I ended up linking in the *.o files needed to get exactly
what I needed (in your case, the file defining CloneModule and
whatever else you need), without pulling in too much (causing
duplicate symbol issues with opt).
Hopefully this
2011 Jul 15
0
[LLVMdev] Makefile Question
On 7/14/11 7:36 PM, Gregory Malecha wrote:
> Hello,
>
> I have a question about how to set up a Makefile that generate a .so
> that I can load into opt without getting duplicate symbols. Here's
> what I have right now:
Have you tried removing LINK_COMPONENTS below? I suspect that the opt
binary already contains everying in the transformUtils library.
-- John T.
>
>
2011 Jul 15
2
[LLVMdev] Makefile Question
Hello,
I have a question about how to set up a Makefile that generate a .so that I
can load into opt without getting duplicate symbols. Here's what I have
right now:
LIBRARYNAME=previrt
SHARED_LIBRARY=previrt
LINK_COMPONENTS := transformUtils
LINK_LIBS_IN_SHARED=1
include $(LEVEL)/Makefile.common
LIBS += -lprotobuf
CPPFLAGS += -I${HOME}/.root/usr/include -DGOOGLE_PROTOBUF_NO_RTTI
LDFLAGS
2010 Feb 18
6
[LLVMdev] ocaml survey
I'm in the process of finishing up the ocaml llvm bindings, and I had
some last minute questions before we code freeze:
1. What version of ocaml is everyone using, and how old of an ocaml
version do you need to support?
2. Would it be alright if I renamed some functions? Module providers
are being removed for 2.7. I can keep the old functions around, but
I'd prefer to keep the API clean.
2011 Jun 23
3
[LLVMdev] llvm compilation of libc?
Hello,
I'm wondering if anyone had any success (even a small amount) compiling any
variant of libc to llvm bitcode?
--
gregory malecha
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20110622/b5fad437/attachment.html>
2011 Jul 29
3
[LLVMdev] llvm-link Patch
Hello,
I'm working on a project that involves archive files and since llvm-link
does not currently support them, I have a simple patch (attached) to add
this functionality. It isn't really efficient (it recomputes the set of
symbols that need to be linked in after each link), and it probably has some
problems with append linkage, but so far it has been enough for me.
I'd like to
2010 Aug 15
4
[LLVMdev] Ocaml bindings in 2.8
Hi,
Does 2.8 release plan to change anything in Ocaml bindings?
http://llvm.org/docs/ReleaseNotes.html#whatsnew does not list any
relevant features.
2.7 added 'operand' that can access each operand from a value.
external operand : llvalue -> int -> llvalue = "llvm_operand"
Does this binding also expose a primitive to return how many operands
a given value has?
I need
2010 Feb 16
2
[LLVMdev] LLVM-OCaml Bindings Tutorial (2.6-2.7)
On Mon, Feb 15, 2010 at 11:47 PM, Jon Harrop <jon at ffconsultancy.com> wrote:
> There are at least two other significant users of LLVM's OCaml bindings,
> AFAIK.
I'm writing an llvm backend/repl for felix, but it's pretty early.
> My only gripe with LLVM's OCaml bindings is the way an error caught on the
> LLVM side causes my program to die in a way that the
2010 Aug 17
0
[LLVMdev] Ocaml bindings in 2.8
Hello Jianzhou,
On Sat, Aug 14, 2010 at 8:25 PM, Jianzhou Zhao <jianzhou at seas.upenn.edu> wrote:
> Hi,
>
> Does 2.8 release plan to change anything in Ocaml bindings?
> http://llvm.org/docs/ReleaseNotes.html#whatsnew does not list any
> relevant features.
I usually wait until around nowish before a release to sync llvm-c and
the ocaml bindings. I'll start the process.
2011 Jul 31
0
[LLVMdev] llvm-link Patch
On 2011-07-29 16:16, Gregory Malecha wrote:
> Hello,
>
> I'm working on a project that involves archive files and since llvm-link
> does not currently support them, I have a simple patch (attached) to add
> this functionality. It isn't really efficient (it recomputes the set of
> symbols that need to be linked in after each link), and it probably has
> some problems
2011 Jun 23
1
[LLVMdev] llvm compilation of libc?
Hi Xi,
How did you compile it with clang? I ran into problems:
clang -emit-llvm -DPACKAGE_NAME=\"newlib\" -DPACKAGE_TARNAME=\"newlib\"
-DPACKAGE_VERSION=\"1.19.0\" -DPACKAGE_STRING=\"newlib\ 1.19.0\"
-DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -I. -DMISSING_SYSCALL_NAMES
-fno-builtin -DMISSING_SYSCALL_NAMES -fno-builtin -O2 -c -o
2007 Nov 27
0
[LLVMdev] Fibonacci example in OCaml
On Monday 26 November 2007 20:05, Gordon Henriksen wrote:
> On Nov 26, 2007, at 14:18, Jon Harrop wrote:
> > On Monday 26 November 2007 16:21, Gordon Henriksen wrote:
> >> Unfortunately, even if the bindings were more strongly typed, it
> >> would still be structurally possible to build invalid LLVM code, so
> >> you've just got to take care not to violate
2008 Mar 15
4
[LLVMdev] improving the ocaml binding's type safety
I was talking to Gordon on #llvm earlier, and he challenged me with
coming up with a way to improve the ocaml binding's type safety. We
can't go letting haskell beat us now, can we? I think I got an easy
solution with phantom types.
For those who don't know what the problem is, the ocaml bindings share
one type between whole class branches (like values). This means we
need to downcast
2011 Jul 25
2
[LLVMdev] dragon egg adding extra characters to function names
Hello,
I'm looking at compiling some pieces of the standard library with llvm but
I'm running into problems with some functions being renamed by dragonegg.
For example, when I compile the acos implementation with plain gcc I get:
$ nm acos.o
0000000000000000 r .LC1
0000000000000048 r .LC10
0000000000000050 r .LC11
0000000000000058 r .LC12
0000000000000060 r .LC13
0000000000000068 r .LC14
2008 Mar 15
3
[LLVMdev] improving the ocaml binding's type safety
So just to compare, here are two different typesafe phantom type
implementations. One is bottom down, the other bottom up. This is an
example of the following functions:
string Value::getName()
bool Constant::isNull()
bool GlobalValue::isDeclaration()
bool GlobalVariable::isGlobalConstant()
bool Function::isVarArg()
Driver code:
val make_constant : unit -> llconstant t
val
2011 Jul 27
2
[LLVMdev] dragon egg adding extra characters to function names
Hi Duncan,
Ah, non-unicode email... In the llvm output there should be a "1" character,
i.e. (char) 0x01, prepended to acos and __GI_acos. I'm unable to get it on
smaller things, but it happens when I try to compile uClibc with llvm. I've
attached the .o and the .bc for comparison. The text file is the result
after preprocessing (to avoid having to download a bunch of stuff).
2008 Mar 15
0
[LLVMdev] improving the ocaml binding's type safety
Hi Erick,
On 2008-03-15, at 04:03, Erick Tryzelaar wrote:
> I was talking to Gordon on #llvm earlier, and he challenged me with
> coming up with a way to improve the ocaml binding's type safety. I
> think I got an easy solution with phantom types.
This could be a good step. I'm not sure I can predict all of the
implications; I'd suggest you work up a proof of concept.
2007 Nov 27
1
[LLVMdev] Fibonacci example in OCaml
On 2007-11-26, at 21:12, Jon Harrop wrote:
> Provide a type enumerating the valid terminators and restrict the
> last instruction in a block to be a terminator. Something like this:
>
> type terminator = [ `ret of llvalue | `br of llvalue ]
> type instruction =
> [ terminator
> | `add of llvalue * llvalue
> | `sub of llvalue * llvalue ]
> type block