Clive2312
1b3229fc9b
updated tuple pass
2022-05-27 08:14:40 +00:00
Clive2312
3a2658a264
need to scalarize array term
2022-05-27 08:07:52 +00:00
Clive2312
050b5b5ae7
updated C frontend to generate correct IR
2022-05-27 07:43:07 +00:00
Clive2312
51dc75c83a
cleaning
2022-05-27 00:05:59 +00:00
Clive2312
7e7aa20b16
uncleaned with lots of print statements
2022-05-26 23:35:10 +00:00
Clive2312
7337bd4023
test
2022-05-26 17:15:19 +00:00
Edward Chen
f01c7e8fb6
test
2022-05-26 13:13:12 -04:00
Clive2312
42bee8b299
merged from pull
2022-05-26 07:38:01 +00:00
Clive2312
3766c0cd58
Merge branch 'function_calls' of https://github.com/circify/circ into function_calls
2022-05-26 07:36:01 +00:00
Clive2312
23f864443c
db.join
2022-05-26 07:36:00 +00:00
Edward Chen
7c3ffacb1d
merged master
2022-05-25 10:04:39 -04:00
Edward Chen
1821dc7721
merged master
2022-05-25 09:44:23 -04:00
Edward Chen
199da498ae
why such large output
2022-05-25 02:48:10 -04:00
Edward Chen
8a9fd407d3
test
2022-05-25 02:45:21 -04:00
Edward Chen
01d5b3bcfa
updated tuple pass
2022-05-25 02:42:24 -04:00
Edward Chen
f29eec8d7b
fixed return type for calls
2022-05-24 21:32:42 -04:00
Edward Chen
f88379f96f
Updated binarize optimization pass ( #85 )
2022-05-23 23:59:03 -04:00
Edward Chen
094b45e76b
test
2022-05-23 15:06:58 -04:00
Edward Chen
e36957bbc1
minor
2022-05-23 01:34:29 -04:00
Clive2312
1381458d53
minor
2022-05-23 05:33:24 +00:00
Edward Chen
a801eb98cc
test
2022-05-21 00:17:13 -04:00
Edward Chen
573326904e
timing opt
2022-05-20 15:14:53 -04:00
Edward Chen
03bd078b67
minor
2022-05-20 14:19:43 -04:00
Edward Chen
8b316b5088
need replace function
2022-05-20 03:15:54 -04:00
Edward Chen
7693d30975
Updates to C Frontend ( #67 )
...
Supporting:
- structs
- ptrs
- n-dimension arrays
- nested structs
- typedef
- sizeof
- shift operations
Benchmarks:
- Original HyCC kmeans testcase (without recursion).
- Original HyCC gauss testcase.
Co-authored-by: Alex Ozdemir <aozdemir@hmc.edu >
Co-authored-by: Ubuntu <ubuntu@neptune2.maas >
2022-05-20 02:20:36 -04:00
Edward Chen
ee43df20e2
memory explosion
2022-05-19 22:47:11 -04:00
Edward Chen
4a2255c0e5
testing calls
2022-05-18 13:17:52 -04:00
Edward Chen
03b1ed7fc1
function calls with stack pointers work!
2022-05-17 22:53:20 -04:00
Alex Ozdemir
c1293464d2
Precomputations (or, as-known-for-proofs, witness extension) ( #80 )
...
Co-authored-by: Riad S. Wahby <rsw@jfet.org >
2022-05-17 08:54:04 -07:00
Edward Chen
cef7981ca6
merged c frontend
2022-05-16 12:35:35 -04:00
Edward Chen
193f90fcce
removed ptr declaration
2022-05-16 12:32:34 -04:00
Edward Chen
cb49526a48
minor
2022-05-16 12:27:37 -04:00
Alex Ozdemir
2537f4708e
function calls ( #83 )
2022-05-16 09:12:37 -07:00
Edward Chen
5894fa6f03
merge master
2022-05-16 11:34:14 -04:00
Edward Chen
341204d59e
playground update
2022-05-16 11:25:57 -04:00
Edward Chen
45f077f59e
stuck
2022-05-14 18:24:47 -04:00
Edward Chen
4d0923847f
checkpoint
2022-05-14 17:31:04 -04:00
Edward Chen
dec2ff002c
merge with master
2022-05-09 16:50:48 -04:00
Edward Chen
d61cc18891
fixed func def name
2022-05-09 16:43:10 -04:00
Edward Chen
2a2e94d966
Merge branch 'c_frontend' into function_calls
2022-05-09 16:30:09 -04:00
Riad S. Wahby
028f747f4d
concurrency fixes for garbage collection ( #81 )
...
* concurrency fixes for garbage collection
* COLLECT lock even when not testing
2022-05-07 17:20:27 -07:00
Alex Ozdemir
fa671673a8
Bugfix: non-recursive type-checking for Op::Map ( #82 )
...
Credits to @kwantam for noticing the bug. Thank you!
2022-05-07 12:31:37 -07:00
Edward Chen
3028832b44
new IR terms for supporting function calls
2022-05-05 14:24:36 -04:00
Edward Chen
bc094d4776
merged with master
2022-05-04 18:13:36 -04:00
Edward Chen
f7995c5a8b
merge with master
2022-05-04 17:33:50 -04:00
Edward Chen
5e0ef38538
cargo.lock
2022-05-04 17:28:37 -04:00
Edward Chen
c5e85b1ab3
updated test cases
2022-05-04 17:22:54 -04:00
Riad S. Wahby
a3fa232ba2
improve memory consumption ; add Z# strict unary op, ternary ?:, and type aliases ( #77 )
...
* update TODO
* add quiet mode to zxc
* Drop and garbage collection
This commit adds Drop instances and related functionality that force
garbage collection at life cycle end of various structs that contain
Terms.
I didn't implement Drop for Computation because its Terms are generally
moved into a converter. This means that back-ends are responsible for
garbage collecting (see new functionality in ILP, R1cs, and ABY).
* collect the cfold table, too
* prevent double-panic as a result of garbage_collect()
* z# parser: zx is a default extension too
* update Cargo.lock
* strictness un-op #()
also added err messages for asserts and ?: ternary support from ZoK upstream
* for assignments, strict rhs => strict lhs
* zsharp: type definitions WIP
Still missing monomorphization.
* type defns: generic inference
* struct monomorphization for type aliased structs
* different approach: no monomorphization, just canonicalize aliases
* canonicalize struct names
* typedef tests
things work except that importing an alias and not its referent breaks typechecking
* add error message about needing to import referent structs
* update hashconsing pointer in Cargo.toml
* maybe_garbage_collect should also return early when panicking
Co-authored-by: Alex Ozdemir <aozdemir@hmc.edu >
2022-05-04 10:08:23 -07:00
Edward Chen
c9ec54bc1a
broken test case
2022-04-28 23:37:27 -04:00
Edward Chen
4e49788723
broken playground
2022-04-27 21:17:16 -04:00