Commit graph

  • ca17b03180 Merge branch 'master' of github.com:llvmpy/llvmpy into llpython-dev Jon Riehl 2013-09-09 16:04:55 -05:00
  • aae25f5e55 Remove shebangs from library code Sergio Pascual 2013-09-09 13:00:01 +02:00
  • af2c1d6d01 update change log 0.12.0 Siu Kwan Lam 2013-08-28 17:11:03 -05:00
  • 4e993570cd disable logging to avoid a exception ignored message Siu Kwan Lam 2013-08-28 14:17:43 -05:00
  • 6bbf53241d revive a casting code in the binding Siu Kwan Lam 2013-08-28 13:55:38 -05:00
  • 0801df41dc fix upcasting problem (#77 thanks to cantora) Siu Kwan Lam 2013-08-26 12:18:04 -05:00
  • 24f1b33737 Fix a ownership bug (thanks to cantora) Siu Kwan Lam 2013-08-23 10:59:47 -05:00
  • 536bc37c94 Disable MCJIT test on windows 64-bit (#79) Siu Kwan Lam 2013-08-22 14:13:17 -05:00
  • 351bd39814 Python3 fix: Implement __hash__ method for Value class Jay Bourque 2013-08-20 17:20:53 -05:00
  • 33ca795e0c remove chrpath majidaldo 2013-08-16 11:50:38 -05:00
  • d57c4d88c6 fix x86 arch type for LLRT Siu Kwan Lam 2013-08-14 18:25:32 -05:00
  • 328f88bbd5 llvm3.3 has a different TargetTransformInfo Siu Kwan Lam 2013-08-14 18:18:05 -05:00
  • ea5b430297 add IR files in setup.py Siu Kwan Lam 2013-08-14 18:09:17 -05:00
  • 5f01343bba Merge branch 'llrt' Siu Kwan Lam 2013-08-14 17:45:58 -05:00
  • bf8693bb80 disable float div/mod test temporarily llrt Siu Kwan Lam 2013-08-14 17:45:38 -05:00
  • e69048ad3d add div64 and mod64 Siu Kwan Lam 2013-08-14 17:24:34 -05:00
  • 8480d55faf add sdivmod; improve build system; Siu Kwan Lam 2013-08-14 15:29:13 -05:00
  • 7d1c4c18a0 high version number majidaldo 2013-08-14 14:39:10 -05:00
  • 07c64779d8 begin low-level runtime implementation Siu Kwan Lam 2013-08-13 18:38:41 -05:00
  • d10b182479 dislabe MCJIT tests for LLVM3.2 Siu Kwan Lam 2013-08-13 15:27:49 -05:00
  • 1be8b07ced charpath just for linux majidaldo 2013-08-13 14:59:33 -05:00
  • 3a289ccace add percent python majidaldo 2013-08-13 14:55:42 -05:00
  • bf0253c9f9 add chrpath majidaldo 2013-08-13 14:55:13 -05:00
  • d060c10096 add conda build script majidaldo 2013-08-13 14:42:54 -05:00
  • 1ed3c77310 add neg nuw nsw Siu Kwan Lam 2013-08-12 16:16:38 -05:00
  • cfe5e9ea92 add exact flag to IRBuilder Siu Kwan Lam 2013-08-12 16:11:24 -05:00
  • 1e9d37a64e add no-signed-wrap and no-unsigned-wrap flags to IRBuilder Siu Kwan Lam 2013-08-12 15:59:17 -05:00
  • eb4fc653f2 ensure MCJIT ELF autoselect works Siu Kwan Lam 2013-08-12 14:52:16 -05:00
  • b4d943a671 add autoselect ELF generation for MCJIT Siu Kwan Lam 2013-08-12 14:43:23 -05:00
  • c20c4d776f fix exception handling for TargetMachine Siu Kwan Lam 2013-08-12 14:42:49 -05:00
  • 84a95945ea update marker header file Ilan Schnell 2013-08-06 14:17:14 -05:00
  • 0421ad8456 add dev docs Siu Kwan Lam 2013-08-02 12:12:35 -05:00
  • 2a25b1c2b3 fix avx detection for py3 Siu Kwan Lam 2013-08-01 11:50:36 -05:00
  • c4db61c7f5 add test for basic arith operators and problems for div and mod on 32bit platforms Siu Kwan Lam 2013-08-01 13:02:45 -05:00
  • c0e9dedc90 add binding to dynamiclibrary namespace for multimodule linking Siu Kwan Lam 2013-07-31 17:50:30 -05:00
  • 319984f0e0 add MCJIT test Siu Kwan Lam 2013-07-31 16:57:29 -05:00
  • 56a511854a update "attribute(s)" ignorance Siu Kwan Lam 2013-07-31 16:43:50 -05:00
  • 625858aa6f fixes Siu Kwan Lam 2013-07-31 16:05:24 -05:00
  • 6d3253e4ea Add things to make MCJIT working Siu Kwan Lam 2013-07-31 15:44:01 -05:00
  • 4c1b9016fb binding compiles with llvm 3.3 Siu Kwan Lam 2013-07-31 15:12:23 -05:00
  • 4f815224f9 Added types for more of the Python C API. Jon Riehl 2013-07-25 15:56:01 -05:00
  • f332fbf9de Added a few additional Python C API function declarations, used for comparing objects. Jon Riehl 2013-07-23 16:42:59 -05:00
  • 1adf3d871a Added support for UNARY_INVERT bytecode. Jon Riehl 2013-07-23 16:42:46 -05:00
  • 9fe9e8eb39 Incremental extensions to llpython to better support using the Python C-API. Jon Riehl 2013-07-12 19:38:50 -05:00
  • e4f4d56fe6 Added support for POP_TOP and SETUP_LOOP to llpython.af_to_api. Jon Riehl 2013-06-18 11:52:30 -05:00
  • a6cf8c4f71 Made some improvements to llpython.af_to_api, specifically attempting to normalize variable access so reference counting becomes the target API's responsibility. Jon Riehl 2013-06-17 18:08:36 -05:00
  • d8297cf50b Added support for rudimentary control flow, and completely incorrect refcounting in llpython.af_to_api. Jon Riehl 2013-06-14 18:18:30 -05:00
  • a8747d2125 Initial proof of concept for generic API calling code generator in llpython.af_to_api. Jon Riehl 2013-06-14 16:00:42 -05:00
  • fcf5420803 Added argument naming to llpython.byte_translator. Jon Riehl 2013-06-14 15:59:51 -05:00
  • ecf88f93e2 Merge branch 'master' of github.com:llvmpy/llvmpy into llpython-dev Jon Riehl 2013-06-14 11:35:48 -05:00
  • 2338eae5f6 Fix py3 str has no buffer interface Siu Kwan Lam 2013-06-13 17:17:43 -05:00
  • fd41a93554 Added llpython.af_to_api module. Started work on a code generator that accepts address flows, and outputs an LLVM function that implements the given code object using (undefined) API calls for bytecode instructions. Jon Riehl 2013-06-13 15:25:28 -05:00
  • 5f81cab357 Moved most of bytecode_visitor.BytecodeFlowVisitor into a new parent class GenericFlowVisitor, which is a useful starting point for address-based flow visitors. Jon Riehl 2013-06-11 17:11:38 -05:00
  • 68030d51d1 Modified BytecodeFlowBuilder and AddressFlowBuilder to use a named tuple for representing bytecode instructions. Jon Riehl 2013-06-11 16:44:15 -05:00
  • 6c7d493441 Fixed llpython.type_flow's main routine. Was using addr_flow.build_addr_flow() which was removed. Jon Riehl 2013-06-07 19:18:34 -05:00
  • 0b24adb80a Modified various passes to use the inspect module instead of using type comparisons or isinstance. Jon Riehl 2013-06-07 15:30:45 -05:00
  • ee557c55cc Added llpython.tests.test_all module for unit testing all llpython. Jon Riehl 2013-06-06 14:13:39 -05:00
  • 722453502c Continued generalization of byte_flow.demo_flow_builder(), moving traversal logic into visitor function opcode_util.visit_code_args(). Modified byte_control.main() to use visit_code_args(). Jon Riehl 2013-06-06 14:08:09 -05:00
  • c55198095f Modified FlowTestMixin.build_and_test_flow() to return generated flow for further testing. Jon Riehl 2013-06-06 14:04:48 -05:00
  • bba305774a Moved most of llpython.tests.test_addr_flow into llpython.tests.test_byte_flow, made some modifications to various modules to facilitate proper handling of try-finally. Jon Riehl 2013-06-05 18:52:27 -05:00
  • 4837bf194e Moved some utility functions into class methods of the BytecodeFlowBuilder class, and eliminated redundant code in AddressFlowBuilder. Jon Riehl 2013-06-05 15:28:17 -05:00
  • 102d6eac66 Adding basic unit test for llpython.addr_flow. Jon Riehl 2013-06-05 13:49:02 -05:00
  • 31119a48d4 Modified main routine in llpython.addr_flow to make it easier to determine which code object caused an exception in the translator. Jon Riehl 2013-06-05 13:48:30 -05:00
  • b5a15a5019 Added function to iterate through nested code objects, llpython.opcode_util.itercodeobjs(), and used it in llpython.addr_flow. Jon Riehl 2013-06-03 19:12:19 -05:00
  • c890cbdd92 Attempting to improve readability of opcode value stack action map using namedtuple in llpython.opcode_util. Jon Riehl 2013-06-03 18:00:06 -05:00
  • 420d0ed88d Merge branch 'master' of github.com:llvmpy/llvmpy into llpython-dev Jon Riehl 2013-06-03 16:01:03 -05:00
  • 643f0706e9 Checking in non-functional attempt at type dependency simplification pass in llpython.type_flow. Jon Riehl 2013-06-03 16:00:46 -05:00
  • 2415042a2a DIDescriptor does not inherit MDNode 0.11.3 Siu Kwan Lam 2013-05-31 15:01:02 -05:00
  • ad287faeb1 Fixes a werid case of refct problem Siu Kwan Lam 2013-05-31 14:01:57 -05:00
  • 69c75355f4 fix future import Ilan Schnell 2013-05-31 11:47:51 -05:00
  • 84f1b433de Use if-else instead of try-except for perf reason Siu Kwan Lam 2013-05-30 14:04:08 -05:00
  • 2e8944916c Add DIBuilder binding Siu Kwan Lam 2013-05-29 16:16:19 -05:00
  • 17ec89e457 Fix win32 build Siu Kwan Lam 2013-05-28 19:23:40 -05:00
  • 6b333e84aa Use error message string from BytesIO Mark Florisson 2013-05-27 12:22:13 +01:00
  • 009239713e Update llvm_array concepts. Travis E. Oliphant 2013-05-25 13:35:37 -05:00
  • 1812cff2d0 Fix import problem. Travis E. Oliphant 2013-05-25 13:34:14 -05:00
  • a0eb03b239 Fix CompareInstruction.predicate Siu Kwan Lam 2013-05-23 11:45:15 -05:00
  • 5b2b878f24 Enable MCJIT Siu Kwan Lam 2013-05-22 15:17:59 -05:00
  • abbf972768 Added address flow builder, and type constraint generator. Jon Riehl 2013-05-21 11:58:26 -05:00
  • 329b10dbf0 Merge branch 'master' of github.com:llvmpy/llvmpy into llpython-dev Jon Riehl 2013-05-20 20:32:40 -05:00
  • edab81ed7e Fix GC problem with Module when it is GCed but re-instantiate from GlobalValue.module. Siu Kwan Lam 2013-05-17 14:05:40 -05:00
  • 8b075317cd Merge branch 'master' of github.com:llvmpy/llvmpy into llpython-dev Jon Riehl 2013-05-16 15:38:55 -05:00
  • c06f811473 Reintroduced dead code elimination to CFA pass to avoid dataflow problems. Updated tests. Jon Riehl 2013-05-16 15:38:12 -05:00
  • 96dc907613 Make enum integer constants prints name Siu Kwan Lam 2013-05-16 13:46:57 -05:00
  • 592f9c6988 Allow retrieving argument attributes Siu Kwan Lam 2013-05-16 13:45:59 -05:00
  • 331f71f26f Fix hashing of llvm type Siu Kwan Lam 2013-05-16 11:34:27 -05:00
  • c5d95e01e1 More work on CFA for try-finally in the presence of loops. Jon Riehl 2013-05-15 18:40:44 -05:00
  • 8ae1b70206 Initial attempt to support return statements in try-finally block in llpython.byte_control. Added incomplete unit tests. Jon Riehl 2013-05-14 17:34:54 -05:00
  • d3b252531d Updates to llpython.opcode_util to better support loop and exception control flow. * Inlcuded non-argument branching opcodes in the hasjump opcode list. * Added all the SETUP_* opcodes to the hascbranch list. * Modified itercode() to not output the EXTENDED_ARG bytecode. * Cleaned up extendlabels(), and made it use the hasjump opcode list uniformly. Jon Riehl 2013-05-10 19:04:03 -05:00
  • 6f532f164a Working on full opcode coverage and support for exception control flow. Jon Riehl 2013-05-09 16:03:31 -05:00
  • 5ef00671e7 Add support for more bytecodes. Jon Riehl 2013-05-08 18:24:38 -05:00
  • 8787af154e Change idom() method to get_a_dom(), update uses, and documentation. Jon Riehl 2013-05-08 18:23:55 -05:00
  • db7323771f Fix PR Siu Kwan Lam 2013-05-14 11:23:50 -05:00
  • f4b320ff09 Fix a few erros. Add an array type Travis E. Oliphant 2013-05-14 00:51:45 -05:00
  • 08bed7dd74 Fix bug with Module.to_bitcode() (Reported by Jun Koi) Siu Kwan Lam 2013-05-14 10:32:37 -05:00
  • c118427118 Don't get name field from literal structure and avoid a segfault. Travis E. Oliphant 2013-05-14 04:26:10 -05:00
  • ca192850ee Silent capsule memory logger. improvefunction Siu Kwan Lam 2013-05-10 10:58:51 -05:00
  • 7a77be01cc Fix a few erros. Add an array type Travis E. Oliphant 2013-05-14 00:51:45 -05:00
  • 3e0dc25070 Silent capsule memory logger. Siu Kwan Lam 2013-05-10 10:58:51 -05:00
  • 489d8056b9 Fix error msg Siu Kwan Lam 2013-05-03 10:57:38 -05:00