Commit Graph

8255 Commits

Author SHA1 Message Date
Sebastien Bourdeauducq a158b87d9f rtio: collapse zero-length intervals 2014-09-10 21:21:02 +08:00
Sebastien Bourdeauducq 7e889b014d py2llvm: add break statement support 2014-09-10 16:16:12 +08:00
Sebastien Bourdeauducq d66448a486 py2llvm: for loop and range support 2014-09-10 16:06:27 +08:00
Sebastien Bourdeauducq a580d44007 rtio: ignore series of writes with the same value and add pileup detection 2014-09-09 22:02:17 +08:00
Sebastien Bourdeauducq 5144da3f9a transforms/inline: add sequential block when inlining function 2014-09-09 22:01:28 +08:00
Sebastien Bourdeauducq e6530075d9 devices/dds_core: add on/off methods 2014-09-09 22:00:51 +08:00
Sebastien Bourdeauducq 0ad2b4d09b transform/inline: fix subscript handling 2014-09-09 21:03:15 +08:00
Sebastien Bourdeauducq 8aa69cb959 devices/runtime: use new py2llvm methods 2014-09-09 21:02:38 +08:00
Sebastien Bourdeauducq eec52a2e29 py2llvm: array support 2014-09-09 17:13:48 +08:00
Sebastien Bourdeauducq e2ca571c89 transforms/inline: let array calls through 2014-09-09 17:13:26 +08:00
Sebastien Bourdeauducq f410b4d241 language/core: add array function 2014-09-09 17:12:37 +08:00
Sebastien Bourdeauducq 1bf2142785 test/py2llvm: do all operations in test classes 2014-09-09 11:05:48 +08:00
Sebastien Bourdeauducq 9eb2a2441d py2llvm: factor repr/same_type/merge for values 2014-09-09 10:30:10 +08:00
Sebastien Bourdeauducq 60368aa9e2 py2llvm: complete rational arithmetic support 2014-09-08 18:45:46 +08:00
Sebastien Bourdeauducq 1133308dd5 py2llvm: support 'neg' on VInt 2014-09-08 18:25:04 +08:00
Sebastien Bourdeauducq 3d8159ceb5 soc/runtime: find ELF entry point
This allows multiple functions to be defined, with the main one not necessarily starting at 0.
2014-09-07 17:30:35 +08:00
Sebastien Bourdeauducq 71b8575d7a py2llvm/fractions: add numerator/denominator getattr support 2014-09-07 15:26:05 +08:00
Sebastien Bourdeauducq e2d834928f py2llvm/ast_body: support getattr 2014-09-07 15:24:19 +08:00
Sebastien Bourdeauducq c5c38c6376 py2llvm: remove unnecessary indirection for unary operators 2014-09-07 15:09:38 +08:00
Sebastien Bourdeauducq bce687b4a0 py2llvm/base_types: implement 'not' on 'None' 2014-09-07 14:55:46 +08:00
Sebastien Bourdeauducq dddc9259b0 py2llvm: run passes before creating EE 2014-09-07 14:47:09 +08:00
Sebastien Bourdeauducq 15dcf3351b py2llvm: move GCD function into LLVM IR 2014-09-07 14:46:32 +08:00
Sebastien Bourdeauducq 3c8b541939 py2llvm: reorganize, split 'values' module, factor LLVM module/pass management 2014-09-07 14:09:03 +08:00
Sebastien Bourdeauducq 58465e49fa test/py2llvm: clean up test_types function 2014-09-07 14:07:07 +08:00
Sebastien Bourdeauducq 6deaf7b81a py2llvm: add support for function parameters and return values, add unit test 2014-09-06 19:03:08 +08:00
Sebastien Bourdeauducq 64c29bcfa6 py2llvm/values: support 'not' on VInt 2014-09-06 19:02:09 +08:00
Sebastien Bourdeauducq 2ef187b7d3 py2llvm/values: fix arity of 'not' 2014-09-06 18:18:08 +08:00
Sebastien Bourdeauducq a647e1104d compiler: split into transforms and py2llvm 2014-09-05 22:18:31 +08:00
Sebastien Bourdeauducq ef1f8787dc devices/runtime: minor cleanup 2014-09-05 21:51:58 +08:00
Sebastien Bourdeauducq 66af70bfe0 soc/runtime: resolve compiler_rt symbols in kernel 2014-09-05 17:50:24 +08:00
Sebastien Bourdeauducq 8d7591dfcf more PEP8 2014-09-05 17:06:41 +08:00
Sebastien Bourdeauducq 86193437f5 compiler/ir_values: fix gcd64 2014-09-05 16:48:27 +08:00
Sebastien Bourdeauducq 4915b4b5aa PEP8 2014-09-05 12:03:22 +08:00
Sebastien Bourdeauducq 7e9df82e37 compiler/ir_values: implement rational mul/div 2014-08-28 18:58:24 +08:00
Sebastien Bourdeauducq 841e7cce35 compiler/ir_values: fix right operations 2014-08-28 18:58:05 +08:00
Sebastien Bourdeauducq a861226409 compiler/ir: fraction normalization 2014-08-28 17:24:33 +08:00
Sebastien Bourdeauducq a579b105b6 soc/runtime: split main.c, add gcd64 2014-08-28 16:56:48 +08:00
Sebastien Bourdeauducq 4de670b370 examples/dds_test: use integer as boolean (now supported by compiler) 2014-08-19 17:53:35 +08:00
Sebastien Bourdeauducq 76cef042a5 compiler/ir: introduce Fraction type (incomplete) 2014-08-19 17:52:55 +08:00
Sebastien Bourdeauducq 0832507c26 compiler/ir: refactor SSA/alloca management 2014-08-19 17:52:05 +08:00
Sebastien Bourdeauducq 62b872ad94 devices/dds_core: use new compiler features to compute tuning word trivially 2014-08-18 23:53:10 +08:00
Sebastien Bourdeauducq 7a90f4f4ec runtime: start RTIO counter at first rtio_set 2014-08-18 23:46:58 +08:00
Sebastien Bourdeauducq 7d8dc4ef30 runtime: support 64-bit RTIO timestamps 2014-08-18 23:41:54 +08:00
Sebastien Bourdeauducq f8e9f1f7ac examples/coredev_test: use augmented assignments 2014-08-18 23:17:23 +08:00
Sebastien Bourdeauducq f6bbcb6789 examples/coredev_test: use booleans 2014-08-18 23:16:02 +08:00
Sebastien Bourdeauducq 3a6bed43e6 examples/time_test: RPC does not support int64 yet, cast to int 2014-08-18 23:12:19 +08:00
Sebastien Bourdeauducq b3b61d8b6b compiler/fold_constants: fix int/round 2014-08-18 23:11:53 +08:00
Sebastien Bourdeauducq 24544f2758 compiler/tools/eval_constant: raise NotConstant on calls 2014-08-18 23:11:27 +08:00
Sebastien Bourdeauducq b1598ba659 compiler/inline: add microcycle_unit as reserved name 2014-08-18 23:06:50 +08:00
Sebastien Bourdeauducq 7ea28642e4 compiler: add lower_units transform 2014-08-18 23:06:34 +08:00