Displaying 20 results from an estimated 10000 matches similar to: "[LLVMdev] Matching struct layouts."
2008 May 16
0
[LLVMdev] Matching struct layouts.
On Fri, May 16, 2008 at 12:31 PM, Duncan Sands <baldrick at free.fr> wrote:
>> > If this is an arbitrary struct, it can be quite tricky. Do you have
>> > to worry about bitfields and variable sized fields (for example a
>> > variable length array at the end)? What about unions?
>>
>> There are no bitfields, but it does have a variable length array at
2008 May 16
2
[LLVMdev] Matching struct layouts.
> > If this is an arbitrary struct, it can be quite tricky. Do you have
> > to worry about bitfields and variable sized fields (for example a
> > variable length array at the end)? What about unions?
>
> There are no bitfields, but it does have a variable length array at the end.
> There are no unions.
You could use llvm-gcc to convert the struct to an LLVM type.
2008 May 16
2
[LLVMdev] Matching struct layouts.
"Mahadevan R" <mdevan.foobar at gmail.com> writes:
>> You could use llvm-gcc to convert the struct to an LLVM type.
>> Otherwise, it wouldn't be too hard to convert the struct by
>> hand as long as it doesn't have any exotic types in it. A
>> VLA at the end (with element type T) is currently represented
>> by placing a field of type T at the
2010 Oct 02
0
[LLVMdev] llvm-py (Python bindings for LLVM), new release 0.6.
Hi Mahadevan,
This looks very nice.
Is there a good reason to maintain this outside of the LLVM source
tree, or is this something you would like to see come in tree?
- Daniel
On Thu, Sep 2, 2010 at 10:58 PM, Mahadevan R <mdevan.foobar at gmail.com> wrote:
> Hi all,
>
> Thought you might be interested:
>
> llvm-py 0.6 was released a couple of days back. This release is
2010 Sep 03
2
[LLVMdev] llvm-py (Python bindings for LLVM), new release 0.6.
Hi all,
Thought you might be interested:
llvm-py 0.6 was released a couple of days back. This release is
compatible with LLVM 2.7.
Check it out at http://www.mdevan.org/llvm-py/.
llvm-py has it's own mailing list, at http://groups.google.com/group/llvm-py.
Regards,
-Mahadevan.
(author of llvm-py)
2008 Nov 23
1
[LLVMdev] llvm-py 0.5 released.
> Date: Sat, 22 Nov 2008 11:42:49 -0800
> From: Chris Lattner <clattner at apple.com>
> Subject: Re: [LLVMdev] [ANN] llvm-py 0.5 released.
> To: LLVM Developers Mailing List <llvmdev at cs.uiuc.edu>
> Message-ID: <B7A557A7-587A-478A-AB94-B03FDA6254A8 at apple.com>
> Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes
>
>
> On Nov 22,
2008 Nov 22
2
[LLVMdev] llvm-py 0.5 released.
Hi.
Version 0.5 of llvm-py, Python bindings for LLVM, has been released.
This version supports (only) LLVM 2.4. New instructions of LLVM 2.4
(vicmp, vfcmp, insertvalue, extractvalue) are available.
Home page: http://mdevan.nfshost.com/llvm-py/
Feedback welcome.
Thanks & Regards,
-Mahadevan.
2008 Jun 11
4
[LLVMdev] Query on optimization and tail call.
Hi,
While playing around on the LLVM, I tried this code:
int sum(int n)
{
if (n == 0)
return 0;
else
return n + sum(n-1);
}
and this is what "llvm-gcc -O2" gave me:
define i32 @sum(i32 %n) nounwind {
entry:
%tmp215 = icmp eq i32 %n, 0 ; <i1> [#uses=1]
br i1 %tmp215, label %bb10, label %tailrecurse.bb10_crit_edge
tailrecurse.bb10_crit_edge: ; preds =
2008 Jun 11
0
[LLVMdev] Query on optimization and tail call.
On Tue, Jun 10, 2008 at 11:07 PM, Mahadevan R <mdevan.foobar at gmail.com> wrote:
> int sum(int n)
> {
> return n + sum(n-1);
> }
>
> it generates this:
>
> define i32 @sum(i32 %n) nounwind {
> entry:
> %tmp2 = add i32 %n, -1 ; <i32> [#uses=1]
> %tmp3 = tail call i32 @sum( i32 %tmp2 ) nounwind ; <i32>
2009 Jan 05
1
[LLVMdev] Small doc fix.
Hi,
The LLVM Assembly Language Reference [1] incorrectly states that the
prefix used for dll{import,export} is _imp__; it is actually __imp_.
The attached patch fixes this.
Thanks & Regards,
-Mahadevan.
[1] file:///home/mdevan/llvm/docs/LangRef.html#linkage
-------------- next part --------------
A non-text attachment was scrubbed...
Name: doc-dllimport-prefix.patch
Type: text/x-diff
Size:
2008 Jul 08
2
[LLVMdev] Intrinsics and it's documentation.
On Tue, Jul 8, 2008 at 12:00 AM, Chris Lattner <sabre at nondot.org> wrote:
> On Mon, 7 Jul 2008, Mahadevan R wrote:
>> While going through the list of intrinsics in Intrinsics.td, I found
>> that it does not match the list given in Language Reference [1]. Does
>> this mean that they are not to be used / don't work? Or is it just
>> that the documentation is
2008 May 10
4
[LLVMdev] Python bindings available.
Hi all,
I'd like to announce the availability of Python bindings for LLVM.
It is built over llvm-c, and currently exposes enough APIs to build an
in-memory IR (and dump it!). It needs LLVM 2.3 latest and Python 2.5
(2.4 should be sufficient, but I haven't tested). Tested only on
Linux/i386.
Would love to hear your comments.
[Needless to say, it's all work in progress, but mostly it
2008 Mar 28
0
[LLVMdev] Python bindings?
On Fri, Mar 28, 2008 at 12:00 AM, Mahadevan R <mdevan.foobar at gmail.com> wrote:
> 1)
> Are the C bindings complete? That is, is there some part of the C++ API
> that is not exposed by the C API?
Nope, there's still a lot that's not done. Patches are always welcome
:) We've got enough in subversion to implement the Kaleidoscope
tutorial though.
> 2)
> Do
2008 Sep 15
1
[LLVMdev] LLVM bindings, scope of llvm-c
> From: OvermindDL1 <overminddl1 at gmail.com>
> There could just as easily be language bindings between C++ and
> Python, he chose the C bindings probably just because they were
> easier, but they are most certainly not required. I know that is the
> case in a few other scripting languages as well.
He ( I :-) ) chose llvm-c based on the thread starting here:
2010 Oct 19
4
[LLVMdev] Structure memory layout
Hi LLVM members,
I have been working to make target independent memory layout for struct type(Aggregate type) in my team.
I think that struct type has different memory layouts according to each target system in current LLVM.
To implement target dependent concept for struct type,
Frist, I have been implementing common type for struct type on bitcode at compilation time using llvm-gcc and then
2008 May 10
0
[LLVMdev] Python bindings available.
On May 10, 2008, at 05:44, Mahadevan R wrote:
> I'd like to announce the availability of Python bindings for LLVM.
>
> It is built over llvm-c, and currently exposes enough APIs to build an
> in-memory IR (and dump it!). It needs LLVM 2.3 latest and Python 2.5
> (2.4 should be sufficient, but I haven't tested). Tested only on
> Linux/i386.
>
> Would love to hear
2008 May 16
0
[LLVMdev] Matching struct layouts.
> > But can I assume that both gcc and LLVM will layout the structure
> > in the same way (member alignment, padding)?
>
> llvm-gcc and gcc follows the same platform C ABI. So the answer to your
> question is "yes".
That's not entirely true. For example it assumes the user is not
using attributes to create types with unusual alignments or sizes.
Most of the
2008 Aug 04
1
[LLVMdev] llvm-c bindings and exceptions?
Hi,
On Sun, Aug 3, 2008 at 11:42 PM, Chris Lattner <clattner at apple.com> wrote:
>
> On Aug 3, 2008, at 7:54 AM, Mahadevan R wrote:
>
>> Hi,
>>
>> Just wondering -- shouldn't all (C linkage) functions exposed by
>> LLVM-C (and written in C++) be catching std::exception (or "...") to
>> prevent exceptions being passed on to C callers?
2008 Jun 10
0
[LLVMdev] ExecutionEngine::create returns 0
On Tue, 10 Jun 2008 07:07:35 +0530, Mahadevan R wrote:
>> Now to compare it in detail with the much smaller program I've got and
>> maybe I'll figure out what's wrong with my call to
>> ExecutionEngine::create.
>
> That call is perfectly valid, actually. It works for me when linked
> with:
>
> g++ -o b b.o `llvm-config --ldflags` `llvm-config --libs
2008 May 13
2
[LLVMdev] Python bindings available.
Hm. I may misunderstand, but I'm not sure that's an improvement over
the problem you're trying to solve. How about something like this?
(Please forgive any accent; I don't speak snake fluently.)
class Pet(object):
@staticmethod
def new():
# Create a 'free' pet. It can later become owned, but not to more
than one owner.
return