Commit Graph

7993 Commits

Author SHA1 Message Date
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
Sebastien Bourdeauducq dcc140c5a9 compiler/lower_time: make 'now' an int64 2014-08-18 23:04:28 +08:00
Sebastien Bourdeauducq 331dbc971b language/units: add microcycle unit for core time 2014-08-18 22:52:54 +08:00
Sebastien Bourdeauducq 56ccd054eb compiler/fold_constants: support int, int64, round and round64 2014-08-18 22:52:19 +08:00
Sebastien Bourdeauducq 219aa23d25 compiler/ir_values: implement sign extension and truncation 2014-08-18 22:51:54 +08:00
Sebastien Bourdeauducq 4ff61a8f56 compiler/ir_ast_body,ir_values: minor fixes 2014-08-18 22:51:24 +08:00
Sebastien Bourdeauducq a5e5b5c870 compiler: pass funcdef instead of statement list 2014-08-18 21:37:30 +08:00
Sebastien Bourdeauducq 86577ff64f compiler/inline: update reserved names 2014-08-18 21:34:13 +08:00
Sebastien Bourdeauducq e1cdec8c07 compiler/ir: fix compile_function call 2014-08-18 21:32:52 +08:00
Sebastien Bourdeauducq 1e654f5da2 compiler/tools: support int64 in value_to_ast 2014-08-18 21:31:56 +08:00
Sebastien Bourdeauducq fc9cf67069 compiler/ir: use new infrastructure 2014-08-18 14:34:14 +08:00
Sebastien Bourdeauducq 15c78df3a2 devices/runtime: new syscall API 2014-08-18 14:33:54 +08:00
Sebastien Bourdeauducq 65566ec710 compiler/ir_ast_body,ir_infer_types: support syscalls 2014-08-18 14:33:21 +08:00