1
0
Fork 0
mirror of https://github.com/ton-blockchain/ton synced 2025-02-13 03:32:22 +00:00
Commit graph

12 commits

Author SHA1 Message Date
EmelyanenkoK
8eb167b76a
Fix FunC UB (#656)
* Fix UB in func

* Improve optimizing int consts and unused variables in FunC

* Bump funC version to 0.4.3

* Fix analyzing repeat loop

---------

Co-authored-by: SpyCheese <mikle98@yandex.ru>
2023-04-03 10:13:39 +03:00
SpyCheese
0578cb4a42
Fix typos, UBs and warnings (#625) 2023-02-28 12:06:09 +03:00
EmelyanenkoK
a1d8a5e4f3
Add complex assigns to FunC and fix UB (#574)
* Fixed complex funC setglob cases

* Forbid modifying local variables after using them in the same tensor

* Fix analyzing "while" in func

* Update funC version (#9)

* Update stress tester

* Fix using variable after move

Co-authored-by: krigga <krigga7@gmail.com>
Co-authored-by: SpyCheese <mikle98@yandex.ru>
2022-12-29 18:06:13 +03:00
EmelyanenkoK
e1be988df5
Add try/catch to FunC (#560)
* Add try-catch

* Fix 'return' bugs

* Update tests

* Fix 'SETCONTVARARGS' bug

* Fix 'SETCONTVARARGS' bug again

* Check deep stack

* Add throw_arg

Co-authored-by: legaii <jgates.ardux@gmail.com>
2022-12-22 15:26:39 +03:00
EmelyanenkoK
40cec56e28
A series of FunC improvements (#378)
* Don't use IFJMP/IFNOTJMP in inline functions

* Fix incorrect ifelse branch code generation 

https://github.com/ton-blockchain/ton/issues/374

* Make generate_code_all clearer

* Don't replace IFJMP with IF in inner blocks in inline functions

* Allow unbalance if/else by using RETALT

* Fix wrong PUSHCONT

* Bugfix in IF code generation for inline functions

* Fix unbalanced if/else

* Bugfix and improvements in code generation

* Fix analyzing while(0) in func

https://github.com/ton-blockchain/ton/issues/377

* FunC and Asm.fif: Fix inlining large functions

https://github.com/ton-blockchain/ton/issues/375

Co-authored-by: SpyCheese <mikle98@yandex.ru>
2022-08-04 14:48:19 +03:00
EmelyanenkoK
0c772185ef Add constants and string literals to funC
* Add special string literals "..."? (s,a,u,h,)

* Add string literal H (256-bit hash)

* Add string literal c (crc32)

* Use td::hex_encode instead of homebrew function and add test

* Fix error codes and use more generic address

* Add support for int and slice constants

* Add support for strongly typed constants

* Add support for precompiled constant expressions (hard!)

Co-authored-by: starlightduck <starlightduck@gmail.com>
2022-05-06 11:13:04 +03:00
ton
a73d202ba2 updated func and tonlib 2020-02-15 20:03:17 +04:00
ton
acf16718e6 updated func/fift
- updated func/fift
- updated liteclient/liteserver
- bugfixes
2019-12-29 12:14:12 +03:00
ton
d41ce55305 updated fift/func 2019-12-12 19:16:25 +04:00
ton
b978e27b2f updated smartcontract code
- updated smartcontract code
- fixed bug in liteserver listening socket
- updated documentation
2019-10-14 11:13:23 +04:00
ton
dd745485e2 update tonlib
tonlib: update
collator: increased collation speed for masterchain
fift: bugfixes
2019-10-04 16:08:02 +04:00
initial commit
c2da007f40 initial commit 2019-09-07 14:33:36 +04:00