Siu Kwan Lam
0079b1de07
Cleanup all memory allocations and their exception handling
2012-09-15 18:34:15 -07:00
Siu Kwan Lam
f17d4f7d62
Add try-catch to all exposed functions
2012-09-15 18:17:16 -07:00
Siu Kwan Lam
d77c3a61e1
Better error handling for PyCapsule_GetPointer
2012-09-14 19:28:21 -07:00
Siu Kwan Lam
56796cad61
Follow up on pull request 21. Since PyCapsule_GetPointer returns NULL on error, we should check if the list element is Py_None.
2012-09-14 18:42:49 -07:00
Wladimir J. van der Laan
c94e852c0e
MetaData operands can be None. Handle this.
2012-09-14 17:09:28 +02:00
Ilan Schnell
5df7c4d159
improve test to not use hardcoded test directory
2012-09-13 10:57:48 -05:00
Ilan Schnell
77d199e60d
add atomic tests
2012-09-12 17:26:03 -05:00
Ilan Schnell
211f273000
add attribute test
2012-09-12 16:26:52 -05:00
Ilan Schnell
8af02c5a7e
add the assembly test
2012-09-12 15:50:29 -05:00
Ilan Schnell
b8dd256e11
add intrinsic tests to test module
2012-09-12 15:46:20 -05:00
Ilan Schnell
2b9ac16733
move issue 10 test case into common tests
2012-09-12 15:34:41 -05:00
Ilan Schnell
6d60c4a469
add inline test to common test suite
2012-09-12 15:18:12 -05:00
Wladimir J. van der Laan
e2d8079b93
Support MetaDataString, and correctly represent MetaData Values in _make_value
2012-09-12 21:23:54 +02:00
Wladimir J. van der Laan
7f69beb258
Access to MetaData operands
...
This is not available in the C API, so add functions to extra.cpp:
- `LLVMMetaDataGetOperand` wraps MDNode::getOperand
- `LLVMMetaDataGetNumOperands` wraps MDNode::getNumOperands
2012-09-12 20:59:59 +02:00
Wladimir J. van der Laan
6e6bd1ea71
Add support for module named metadata
...
This is mainly useful to get access to top-level debug information through 'llvm.dbg.cu'.
Wraps LLVM C-API functions `LLVMGetNamedMetadataNumOperands`, `LLVMGetNamedMetadataOperands` and `LLVMAddNamedMetadataOperand`.
Also add testcase.
2012-09-12 20:03:24 +02:00
Siu Kwan Lam
5ee6bba66b
Fix invalid prototype after switches to size_t instead of unsigned int.
2012-09-10 17:22:20 -07:00
dand-oss
db00a6b8de
C++ cleanup of old C conventions - prefer C++ casting to unsafe C style casts - use templates to encapsulate casting - prefer new to malloc - apply const when possible - decalare variables as near to use as possible
2012-09-10 16:52:50 -07:00
Siu Kwan Lam
47baa49160
Merge pull request #18 from laanwj/2012_09_constantint_value
...
Thanks!
2012-09-10 16:41:19 -07:00
Siu Kwan Lam
cc12434f57
Add thread local
2012-09-10 16:37:20 -07:00
Wladimir J. van der Laan
41953602bf
Add ways to get the value of a ConstantInt
...
- property z_ext_value gets the zero-extended value using LLVMConstIntGetZExtValue
- property s_ext_value gets the sign-extended value using LLVMConstIntGetSExtValue
- add test case for both
2012-09-09 12:40:40 +02:00
Wladimir J. van der Laan
3b22d5accf
Add wrapping constructor for (signed) long long
...
Completely analogous to how unsigned long long is handled
2012-09-09 12:04:27 +02:00
Siu Kwan Lam
fbb7208b85
add invariant load
...
add related test
2012-09-06 20:00:01 -07:00
Siu Kwan Lam
82117d899e
add support for metadata.
...
add related test.
2012-09-06 15:47:23 -07:00
Siu Kwan Lam
78cde30883
Revive inline_function()
2012-09-04 10:06:36 -07:00
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
Ilan Schnell
abe5f2b42b
REL: master now 0.8.3
2012-08-31 19:14:34 -05:00
Mark Wiebe
01b55b48f7
Add detection of whether LLVM has PTX in the windows build
2012-08-29 13:51:07 -07: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
Mark Wiebe
788af6d82d
Disable PTX backend by default on windows
2012-08-23 09:27:28 -07:00
Siu Kwan Lam
d78253ebe3
Add control to alignment of ld/st inst
2012-08-21 18:28:35 -05:00
Ilan Schnell
552bae1864
add uses tests
2012-08-19 17:32:15 -05:00
Ilan Schnell
501c3d0f61
move native tests
2012-08-19 17:08:34 -05:00
Ilan Schnell
a24d4a9f12
add object cahce tests
2012-08-19 17:10:31 -05:00
Ilan Schnell
274a9e9cd2
finished moving passes tests
2012-08-19 16:26:01 -05:00
Ilan Schnell
4a090c8c76
add passes tests
2012-08-19 16:36:32 -05:00
Ilan Schnell
4985615442
add tests to llvm package
2012-08-19 16:01:17 -05:00
Ilan Schnell
d6fdd31883
Merge branch 'issue8-py2.6'
2012-08-18 22:10:16 -05:00
Siu Kwan Lam
1ed2049395
add method to retrieve host cpu name
...
add stub method to enginebuilder to setMCPU and setMAttrs -- these are not implemented in llvm3.1
2012-08-18 17:32:40 -07: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
7880cdd3ba
Fix get intrinsic
2012-08-15 16:13:38 -07:00
Siu Kwan Lam
8eb6a34d54
Replace fprintf with exception
2012-08-15 15:22:08 -07: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
ec71908874
Add target machine
2012-08-14 12:04:28 -07:00
Siu Kwan Lam
2fd1e6d056
Add & use capsulethunk for Py2.6
2012-08-10 19:22:30 -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