Leonardo de Moura
91c8ff746f
feat(cli_debugger): add commands for traversing stack frames
2016-11-16 12:37:18 -08:00
Leonardo de Moura
3628870121
feat(library/tactic/vm_monitor): extend VM introspection API
2016-11-15 15:05:46 -08:00
Leonardo de Moura
277ff818a1
feat(library/tactic/vm_monitor): add VM introspection API
2016-11-14 17:25:25 -08:00
Leonardo de Moura
7232e3a076
feat(library/vm/vm): invoke debugger (aka vm_monitor)
2016-11-14 14:45:49 -08:00
Leonardo de Moura
a7344671e1
feat(library/vm/vm): add stack_info
2016-11-13 12:20:02 -08:00
Leonardo de Moura
381b2edaf7
feat(library/vm/vm): store .olean file name at vm_decl's
2016-11-11 16:19:19 -08:00
Leonardo de Moura
e673fa65ba
feat(library/vm/vm): Store position information at vm_decl's
2016-11-11 15:39:32 -08:00
Leonardo de Moura
6b3da2daf4
feat(library/compiler/vm_compiler): save local_info for let-expressions
2016-11-08 15:50:38 -08:00
Leonardo de Moura
d66584f390
feat(library/vm,library/compiler): save argument names
2016-11-08 15:10:04 -08:00
Leonardo de Moura
1dcc21525a
chore(library/vm/vm): style
2016-11-04 09:55:20 -07:00
Gabriel Ebner
ef1fc9871b
feat(library/vm/vm): profiler: show cumulative runtimes
2016-11-04 09:39:12 -07:00
Leonardo de Moura
9465f25f09
feat(library/vm): profiler for VM bytecode
2016-11-03 21:15:29 -07:00
Leonardo de Moura
6b582ca6c3
fix(library/vm/vm): bug at get_constant
2016-10-04 01:58:39 -07:00
Leonardo de Moura
4a2946f5dd
feat(library/tactic/eval): eval_expr for arbitrary expressions
2016-10-03 19:01:22 -07:00
Leonardo de Moura
12eb886f49
refactor(library/vm/vm): remove parray
2016-10-03 17:26:03 -07:00
Leonardo de Moura
7465529445
feat(library/tactic): 'eval_expr' tactic skeleton
2016-10-03 16:26:28 -07:00
Leonardo de Moura
199decea51
fix(library/tactic/tactic_state): remove problematic get_tactic_vm_state
2016-08-23 07:38:44 -07:00
Leonardo de Moura
7bb6ccc089
refactor(library/init/meta): qexpr ==> pexpr
2016-08-05 17:04:36 -07:00
Leonardo de Moura
a30603405c
feat(library/vm/vm): add scope_vm_state
2016-07-15 15:10:04 -04:00
Leonardo de Moura
d604cb8b4e
feat(library/vm/vm): add friendly invoke method
2016-06-24 15:49:40 -07:00
Leonardo de Moura
02904c5b87
feat(library/init/meta): add 'reflexivity', 'symmetry' and 'transitivity' tactics
2016-06-18 20:01:53 -07:00
Leonardo de Moura
586baa4118
feat(library,frontends/lean): support for quoted expressions in the VM, compiler and frontend
...
TODO: invoke elaborator at tactic.to_expr
2016-06-15 16:06:39 -07:00
Leonardo de Moura
6e7b4129e7
chore(library): add helper functions
2016-06-09 16:01:39 -07:00
Leonardo de Moura
6157c66ac3
feat(library/vm/vm): allow vm_external subclasses to use their own memory allocation policy
2016-06-06 12:50:55 -07:00
Leonardo de Moura
a55a936db2
feat(library/vm): expose C++ 'expr' object
2016-06-05 21:13:00 -07:00
Leonardo de Moura
924f3629ee
feat(library/vm): expose name of the C++ functions that implement builtins
2016-06-02 12:48:43 -07:00
Leonardo de Moura
417e5ec604
chore(library/vm/vm): typo
2016-06-02 11:46:07 -07:00
Leonardo de Moura
a6a7daff59
refactor(library/vm): avoid constants.txt when creating bindings
2016-06-02 11:45:56 -07:00
Leonardo de Moura
81947e145e
feat(library/vm,library/compiler): add support for builtin cases_on
2016-06-01 19:06:52 -07:00
Leonardo de Moura
e72a8f4a9b
feat(library/vm/vm): add support for builtin constants
2016-06-01 13:05:39 -07:00
Leonardo de Moura
d1e37f1948
fix(library/vm/vm): invoke_closure
2016-05-31 18:44:53 -07:00
Leonardo de Moura
032750f4cb
feat(library/vm/vm): add dynamic declare_vm_builtin
2016-05-31 17:42:42 -07:00
Leonardo de Moura
faf70ed58c
feat(library/vm/vm): add support for declaring builtin cfunctions
2016-05-31 16:48:11 -07:00
Leonardo de Moura
e843062be7
feat(library/vm/vm): add support to builtin c-like functions that use the system stack to pass arguments
2016-05-31 16:19:43 -07:00
Leonardo de Moura
53811822d4
chore(*): style
2016-05-25 18:10:15 -07:00
Leonardo de Moura
bf2d2b9feb
fix(library/vm,library/compiler,frontends/lean): IO monad support
2016-05-25 13:30:43 -07:00
Leonardo de Moura
e40c54013a
feat(library/vm): add basic support for IO monad
2016-05-24 17:52:22 -07:00
Leonardo de Moura
fd1141d999
fix(library/vm/vm,library/compiler/vm_compiler): invoke n ==> apply
...
This change fixes a bug in the VM and simplifies the VM instruction semantics.
2016-05-23 16:45:42 -07:00
Leonardo de Moura
76942ae150
fix(kernel,library): OSX warnings
2016-05-13 21:33:40 -07:00
Leonardo de Moura
423d129105
feat(library/vm/vm): bytecode serialization
2016-05-13 17:51:01 -07:00
Leonardo de Moura
f75caddc35
feat(library/vm/vm): rename cases1 to destruct
2016-05-13 12:30:47 -07:00
Leonardo de Moura
00bc55af3e
feat(library/vm/vm): improve trace
2016-05-13 12:13:47 -07:00
Leonardo de Moura
dc3d7597ee
chore(library/vm/vm): document VM instructions
2016-05-13 11:54:11 -07:00
Leonardo de Moura
56ec91284b
chore(library/vm/vm): cleanup
2016-05-13 11:06:25 -07:00
Leonardo de Moura
35cf7bf8e2
feat(library/vm/vm): remove atomic from VM object reference counter
...
VM objects should not be shared between different threads.
So, the atomic<unsigned> in the reference counter produces an
unnecessary performance penalty.
2016-05-13 11:00:33 -07:00
Leonardo de Moura
2bd400964c
feat(library/vm/vm): store arguments in reverse order on the stack
...
It simplifies the code for handling closures.
2016-05-13 10:54:29 -07:00
Leonardo de Moura
039e960799
feat(library/vm/vm): add InvokeBuiltin instruction
2016-05-13 10:28:05 -07:00
Leonardo de Moura
2c0dee5b41
feat(library/vm/vm): cases2 and casesn take pc of first branch too
2016-05-13 10:15:20 -07:00
Leonardo de Moura
7bdf2d4a5a
feat(library/vm/vm): avoid macros
2016-05-13 09:50:07 -07:00
Leonardo de Moura
b8b32c2a3b
fix(library/vm/vm): typo
2016-05-13 00:43:09 -07:00