Commit Graph

1620 Commits

Author SHA1 Message Date
whitequark 8762019699 ksupport.c: properly prefix compiler-rt symbols. 2015-08-31 22:55:26 -06:00
whitequark 2df8b946f9 Factor out the code to pretty-print diagnostics. 2015-08-31 22:52:39 -06:00
whitequark b03efbc94d compiler.embedding: maintain correct column numbers in debug info. 2015-08-31 22:18:49 -06:00
whitequark 3ca5967cea LLVMIRGenerator: don't map sret LLVM argument to any ARTIQ arguments. 2015-08-31 14:02:02 -06:00
whitequark 5e0ec3a6ea ARTIQIRGenerator: fix keyword/optional argument codegen in calls. 2015-08-31 13:42:36 -06:00
whitequark 501ba912c2 Implement {delay,now,at}{,_mu} and {mu,seconds}_to_{seconds,mu}. 2015-08-31 09:59:33 -06:00
whitequark 5151adb9a8 compiler.targets: correctly pass CPU features to LLVM. 2015-08-30 16:56:58 -05:00
whitequark b263a55b1a compiler.testbench.perf_embedding: implement. 2015-08-30 12:23:16 -05:00
whitequark 2124ff9e91 Fix tests. 2015-08-28 05:28:58 -05:00
whitequark cbd903a9dc compiler.embedding: add tests for quote serialization. 2015-08-28 05:24:57 -05:00
whitequark 37811f690b ARTIQIRGenerator: support comparisons against None. 2015-08-28 05:14:52 -05:00
whitequark bcba86de7e compiler.embedding: handle errors during initial kernel call. 2015-08-28 05:14:06 -05:00
whitequark b35051cb08 compiler.embedding: handle calls into lambdas (poorly). 2015-08-28 05:13:38 -05:00
whitequark 5916c10b24 ARTIQException: replace ARTIQ library path with <artiq> in tracebacks. 2015-08-28 04:55:46 -05:00
whitequark 79af228af3 ksupport: provide abort() to the kernel library. 2015-08-28 04:53:51 -05:00
whitequark 72823cf521 test.{coredevice,coredevice_vs_host} → test.coredevice.{rtio,portability}. 2015-08-28 03:53:43 -05:00
whitequark c621b1f275 compiler: handle language.core.int during embedding. 2015-08-28 03:24:15 -05:00
whitequark 83ebb999c8 transforms.Inferencer: improve attribute unification diagnostic. 2015-08-28 03:23:15 -05:00
whitequark 98bb570aec log.c: fix off-by-one error. 2015-08-28 03:06:40 -05:00
whitequark 30cdb209c6 log.c: fix warnings. 2015-08-28 03:03:32 -05:00
whitequark 9fd25a1cc4 LLVMIRGenerator: fix syscall emission. 2015-08-28 03:03:12 -05:00
whitequark 6a29775bf0 compiler.types.Type: more useful __str__. 2015-08-28 02:53:12 -05:00
whitequark ac92aabce1 Fix default argument fiasco. 2015-08-28 02:50:40 -05:00
whitequark 6b8ef8c490 artiq_run: use "artiq_run_" as user code module prefix, not "file_import_". 2015-08-28 02:22:59 -05:00
whitequark edf33f1643 compiler.targets: dump module signature with ARTIQ_DUMP_SIG=1. 2015-08-28 02:22:35 -05:00
whitequark 677cc69643 compiler.embedding: actually use qualified name when embedding methods.
Previous commit 6b55e3b only did this for embedded types.
2015-08-28 02:22:16 -05:00
whitequark 9605e8215f coredevice.ttl: update for new int semantics. 2015-08-28 02:11:26 -05:00
whitequark 9936768603 ARTIQIRGenerator: fix non-nullary method calls. 2015-08-28 02:11:05 -05:00
whitequark ed236eb7f2 artiq_run: pretty-print diagnostics. 2015-08-28 01:54:51 -05:00
whitequark d473d58b41 artiq_{compile,run}: adapt to new compiler. 2015-08-28 01:43:46 -05:00
whitequark 6b55e3bd80 compiler.embedding: use qualified name when embedding methods. 2015-08-28 01:14:19 -05:00
whitequark 13e612c11b Fix tests. 2015-08-28 00:51:31 -05:00
whitequark 7c1abb25ec compiler.embedding: test all diagnostics.
Also, unify and improve diagnostic messages.
2015-08-28 00:47:28 -05:00
whitequark d80be482fc Allow clearing core device log buffer.
This is useful to get a fresh environment, such as when
running tests that print to log buffer.
2015-08-28 00:37:46 -05:00
whitequark c21387dc09 compiler.embedding: support calling methods marked as @kernel. 2015-08-27 19:46:50 -05:00
whitequark d0fd61866f compiler.types: print fields of instance types. 2015-08-27 17:25:01 -05:00
whitequark 9791cbba4d compiler.embedding: use typedtree hash to iterate inference to fixpoint. 2015-08-27 17:04:28 -05:00
whitequark a3284f8978 compiler.types: fix module paths in __repr__. 2015-08-27 15:46:36 -05:00
whitequark 84e32db622 LLVMIRGenerator: handle self-referential class types. 2015-08-27 15:40:46 -05:00
whitequark 71ebe1778d LLVMIRGenerator: remove debug print. 2015-08-27 15:40:15 -05:00
whitequark f7c8625f61 compiler.embedding: support calling methods via RPC as well. 2015-08-27 05:56:46 -05:00
whitequark c62b16d5e1 compiler.embedding: support RPC functions as host attribute values. 2015-08-27 05:53:18 -05:00
whitequark 04bd2421ad compiler.embedding: dedent kernel functions before parsing. 2015-08-27 05:44:56 -05:00
whitequark cb225269ff Allow accessing attributes of embedded host objects. 2015-08-27 05:01:04 -05:00
whitequark 422208a0e9 Fix copy-paste error. 2015-08-25 22:05:34 -07:00
whitequark 9b9fa1ab7c Allow embedding and RPC sending host objects. 2015-08-25 21:56:01 -07:00
whitequark 526d7c4e46 Fix a typo. 2015-08-22 14:01:55 -07:00
whitequark a557445e05 LocalAccessValidator: assume variables with "$" in name are internal.
Internal variables are assumed to be scoped correctly
(including not being accessed uninitialized).

This was changed from "." because artiq.compiler.embedding uses
"." in module prefix of function names.
2015-08-22 13:56:17 -07:00
whitequark 0e26cfb66e LocalAccessValidator: relax restrictions to accept def f(); def g(). 2015-08-22 13:31:09 -07:00
whitequark b39e76ae28 Remove debug print. 2015-08-22 12:22:26 -07:00