Commit graph

137 commits

Author SHA1 Message Date
Wladimir J. van der Laan
5bd4991f0b Implement property CallOrInvokeInstruction.called_function
Also add a testcase.
2012-09-02 13:23:47 +02:00
Siu Kwan Lam
5d14461c84 Fix ConstantExpr opcode to use C++ enum values.
Note: C++ opcode is different from C opcode values.
Add ConstantExpr opcode name.
Add test for these.
2012-09-01 20:53:33 -07:00
Wladimir J. van der Laan
c033ba02a4 Implement property ConstantExpr.opcode
Use LLVM C-API function `LLVMGetConstOpcode`
2012-09-01 17:33:55 +02:00
Siu Kwan Lam
38d4de35bb Make it possible to pass LLVM options from environment variables.
These options are parsed like commandline options to llc.
2012-08-26 21:00:56 -07:00
Mark Wiebe
bc2c9a24ed Support possibility of neither PTX backend being available 2012-08-23 09:27:30 -07:00
Siu Kwan Lam
d78253ebe3 Add control to alignment of ld/st inst 2012-08-21 18:28:35 -05:00
Siu Kwan Lam
d1bcdd05d1 add NVPTX for LLVM 3.2;
auto-gen _intrinsic_ids.py  in setup.py;
2012-08-18 15:29:26 -07:00
Jon Riehl
7c22f37b57 Adding support for building the "insertvalue" instruction. 2012-08-17 15:52:07 -05:00
Siu Kwan Lam
8b273490a9 Can create PTX target machine and print PTX asm 2012-08-14 16:50:32 -07:00
Siu Kwan Lam
f85713a736 Enable PTX backend 2012-08-14 15:05:22 -07:00
Siu Kwan Lam
bed4f24cbd Added Module.to_native_object() and Module.to_native_assembly().
Added test for these new functions.
2012-08-09 15:41:55 -07:00
Siu Kwan Lam
5e15b27909 Atomic load/store must explicit define alignment. 2012-08-03 14:13:22 -07:00
Siu Kwan Lam
f479f85676 Add memory fence 2012-08-03 12:30:01 -07:00
Siu Kwan Lam
6ac0f3c369 Add atomic load/store 2012-08-03 11:56:59 -07:00
Siu Kwan Lam
4d763680f6 Add easier atomic api 2012-08-03 10:28:17 -07:00
Siu Kwan Lam
fb72ab5c8d Add the rest of atomic op. 2012-08-03 10:14:09 -07:00
Siu Kwan Lam
acad5c9d8b Added atomic cmpxchg. 2012-08-02 17:54:40 -07:00
Siu Kwan Lam
9d068fd582 Add methods to set volatile inst. 2012-08-02 16:51:42 -07:00
Siu Kwan Lam
9aadd489c3 Python3 ready. Py2.7 and Py3 working. Drop PyCObject for all.
Pre Py2.7 support should be possible by including  "capsulethunk.h". (See llvm/wrap.h)
2012-07-26 15:25:23 -07:00
Siu Kwan Lam
6a02c36f04 Added PassManagerBuilder.
Updated test/passes.py for PassManagerBuilder.
2012-07-24 23:42:28 -07:00
Siu Kwan Lam
54a0a95faf Fix missing return in llvm/core.py and do some refactoring;
Update test/testall.py.

TODO: Need to update the passes.
2012-07-23 09:27:24 -07:00
Siu Kwan Lam
c9902ab8cf Add opaque StructType;
Remove test/typehandle.py;
Add test/opaque.py to demonstrate recursive type.
2012-07-22 15:14:52 -07:00
Siu Kwan Lam
b71d22b570 Update StructType to LLVM 3.x (incomplete).
Bring back StructType.elements.
2012-07-22 00:00:04 -07:00
Siu Kwan Lam
9bbeee519b Added Module.id property (getter+setter).
Updated test/asm.py to use unittest.
2012-07-20 20:15:21 -07:00
Travis E. Oliphant
8d064806a1 BUG: Add ConstantDataArray and ConstantD 2012-06-28 14:59:43 -05:00
Travis E. Oliphant
7b6aac79fb Add llvm::Module::addLibrary to exposed API 2012-06-21 01:25:23 -05:00
Travis E. Oliphant
3569ba6182 Update intrinsics and other codes for the 3.1 release. 2012-03-08 11:09:22 -06:00
Travis E. Oliphant
45177bbeb0 Add make_ufunc to llvm-py and additional fixes. 2012-02-18 04:20:21 -06:00
Travis E. Oliphant
76edfad7c8 Fix-up opcodes that are different in 3.0 2012-02-14 16:34:36 -06:00
Travis E. Oliphant
b4f51acd64 More changes to get working on LLVM 3.0 2012-02-09 23:40:22 -06:00
Travis E. Oliphant
c09903e54f Making progress towards a 3.0 version of llvm-py. 2012-02-08 01:40:03 -06:00
AndrewBC
6d50a337ad Updating to python 3 with 2to3. Check llvm/py3k_update.diff and llvm/py3k_update.out for the output from this. 2011-06-11 20:39:16 -05:00
AndrewBC
d5c2806b5d applied patch to work with llvm 2.9 from llvm-py r105 ... 84.7KB version seen here: http://code.google.com/p/llvm-py/issues/detail?id=37 2011-06-05 21:21:18 -05:00
mdevan.foobar
ae61530aff Use extract_value instead of getresult (Bryan Silverthorn) (Issue #34)
git-svn-id: http://llvm-py.googlecode.com/svn/trunk@103 8d1e9007-1d4e-0410-b67e-1979fd6579aa
2010-10-24 08:46:59 +00:00
mdevan.foobar
b7fa3e8fa1 Added llvm.core.Argument.alignment
git-svn-id: http://llvm-py.googlecode.com/svn/trunk@101 8d1e9007-1d4e-0410-b67e-1979fd6579aa
2010-10-15 10:33:37 +00:00
mdevan.foobar
ab4ef428b6 Migrate to LLVM 2.8 (rc2)
git-svn-id: http://llvm-py.googlecode.com/svn/trunk@96 8d1e9007-1d4e-0410-b67e-1979fd6579aa
2010-09-30 13:22:13 +00:00
mdevan.foobar
1c04eb1c87 Updated documentation, partially.
git-svn-id: http://llvm-py.googlecode.com/svn/trunk@90 8d1e9007-1d4e-0410-b67e-1979fd6579aa
2010-08-31 07:31:34 +00:00
mdevan.foobar
aa6a406c46 Add and remove function attributes (Krzysztof Goj)
git-svn-id: http://llvm-py.googlecode.com/svn/trunk@89 8d1e9007-1d4e-0410-b67e-1979fd6579aa
2010-08-03 16:31:41 +00:00
mdevan.foobar
b7200e59b1 Removed the deprecated ModuleProvider class
git-svn-id: http://llvm-py.googlecode.com/svn/trunk@88 8d1e9007-1d4e-0410-b67e-1979fd6579aa
2010-07-26 16:36:02 +00:00
mdevan.foobar@gmail.com
d51eb76fec Updated for LLVM 2.7 (will not work with LLVM 2.6). Work-in-progress.
git-svn-id: http://llvm-py.googlecode.com/svn/trunk@86 8d1e9007-1d4e-0410-b67e-1979fd6579aa
2010-07-24 18:15:49 +00:00
mdevan.foobar
33dc04e33c Corrected values for a few enums
git-svn-id: http://llvm-py.googlecode.com/svn/trunk@84 8d1e9007-1d4e-0410-b67e-1979fd6579aa
2009-10-28 09:39:19 +00:00
mdevan.foobar
5901f8d32b Migrate to LLVM 2.6 (KS Sreeram) (Issue #25)
git-svn-id: http://llvm-py.googlecode.com/svn/trunk@83 8d1e9007-1d4e-0410-b67e-1979fd6579aa
2009-10-28 06:02:04 +00:00
mdevan.foobar
c6e12fd929 Disabled tail call for now, works only on call instructions
git-svn-id: http://llvm-py.googlecode.com/svn/trunk@82 8d1e9007-1d4e-0410-b67e-1979fd6579aa
2009-09-20 12:33:22 +00:00
mdevan.foobar
64d54c49f0 Tail call property for call sites (tarkasteve, issue #19)
git-svn-id: http://llvm-py.googlecode.com/svn/trunk@81 8d1e9007-1d4e-0410-b67e-1979fd6579aa
2009-09-20 09:44:08 +00:00
mdevan.foobar
6cb58c97d7 does not throw property for Function (Andrew Straw)
git-svn-id: http://llvm-py.googlecode.com/svn/trunk@79 8d1e9007-1d4e-0410-b67e-1979fd6579aa
2009-09-20 09:25:14 +00:00
mdevan.foobar
d0e4e09a5d More parameter attributes (Andrew Straw)
git-svn-id: http://llvm-py.googlecode.com/svn/trunk@78 8d1e9007-1d4e-0410-b67e-1979fd6579aa
2009-09-20 09:19:12 +00:00
mdevan.foobar
f3989aa240 CompareInstruction class (Seth Warn)
git-svn-id: http://llvm-py.googlecode.com/svn/trunk@76 8d1e9007-1d4e-0410-b67e-1979fd6579aa
2009-03-25 12:14:28 +00:00
mdevan.foobar
fa30225181 Get raw function pointers, inline functions (Corrado Zoccolo)
git-svn-id: http://llvm-py.googlecode.com/svn/trunk@75 8d1e9007-1d4e-0410-b67e-1979fd6579aa
2009-03-25 12:09:37 +00:00
mdevan.foobar
b2d8ff38a8 More properties/methods for TargetData.
git-svn-id: http://llvm-py.googlecode.com/svn/trunk@73 8d1e9007-1d4e-0410-b67e-1979fd6579aa
2009-03-01 08:34:04 +00:00
mdevan.foobar
ca124ca082 Merging Seth's changes
git-svn-id: http://llvm-py.googlecode.com/svn/trunk@72 8d1e9007-1d4e-0410-b67e-1979fd6579aa
2009-02-26 17:20:25 +00:00