SpyCheese
4d5ded5761
Asm.fif improvements ( #631 ) ( #645 )
...
* Asm.fif improvements (#631 )
Add missing opcodes, CUSTOMOP, disallow 256 PUSHPOW256, recursive PROGRAM, require-asm-fif-version
* Fix nested PROGRAM, add test
* Simplify require-asm-fif-version
---------
Co-authored-by: EmelyanenkoK <emelyanenko.kirill@gmail.com>
2023-03-13 16:48:48 +03:00
EmelyanenkoK
865ebfce8d
Add namespaces to Fift ( #641 )
...
* Add fift-based disassembler
* Fift improvements: namespaces, hashmaps, flow controls
* Fift: add lib with better block structuring and more
* Minor changes in fift HashMap + tests (#643 )
* Minor changes in fift HashMap
* Add tests for extended fift
---------
Co-authored-by: OmicronTau <omicron@ton.org>
Co-authored-by: Tolya <1449561+tolya-yanot@users.noreply.github.com>
Co-authored-by: SpyCheese <mikle98@yandex.ru>
2023-03-10 14:16:29 +03:00
SpyCheese
0578cb4a42
Fix typos, UBs and warnings ( #625 )
2023-02-28 12:06:09 +03:00
EmelyanenkoK
653c88aa9d
Add pragmas to funC for precise control of computation order ( #589 )
...
* FunC pragmas: allow-post-modification and compute-asm-ltr
* Warn if #pragma is enabled only in included files
* Add tests for new pragmas
* Add special ops for "allow-post-modification" only when needed
* Update FunC version to 0.4.1
* Allow empty inlines (#10 )
Co-authored-by: SpyCheese <mikle98@yandex.ru>
2023-01-13 12:45:04 +03:00
EmelyanenkoK
b6d44bb02a
Revert "fix include paths parsing under Windows ( #541 )" ( #557 )
...
This reverts commit 4d09d04a42
.
2022-12-15 17:12:29 +03:00
elderorb
4d09d04a42
fix include paths parsing under Windows ( #541 )
2022-12-15 14:55:11 +03:00
Andrey Tvorozhkov
c1f281d814
Add addr@+ / addr@ functions to parse addr from slice ( #366 )
...
Add addr@ to parse `addr_none$00` / `addr_extern$01` / `addr_std$10` / `addr_var$11` from slice.
Tests:
```
<b b{00} s, b> <s addr@ ."addr_none$00 parsed: " print-addr cr // addr_none$00
<b b{01} s, 10 9 u, b{1101010101} s, b> <s addr@ ."addr_extern$01 parsed: " print-addr cr // addr_extern$01
<b b{10} s, b{1} s, 10 30 u, b{1111111111} s, -1 8 i, x{8000000000000000000000000000000000000000000000000000000000000000} s, b> <s addr@ ."addr_std$10 with Anycast parsed: " print-addr cr // addr_std$10 with Anycast
<b b{10} s, b{0} s, -1 8 i, x{8000000000000000000000000000000000000000000000000000000000000000} s, b> <s addr@ ."addr_std$10 without Anycast parsed: " print-addr cr // addr_std$10 without Anycast
<b b{11} s, b{1} s, 10 30 u, b{1111111111} s, 256 9 u, -10 32 i, x{8000000000000000000000000000000000000000000000000000000000000000} s, b> <s addr@ ."addr_var$11 with Anycast parsed: " print-addr cr // addr_var$11
<b b{11} s, b{0} s, 256 9 u, -10 32 i, x{8000000000000000000000000000000000000000000000000000000000000000} s, b> <s addr@ ."addr_var$10 with Anycast parsed: " print-addr cr // addr_var$11
```
2022-08-15 18:35:27 +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
OmicronTau
0e47c6c8e0
Asm.fif typo in IFBITJMPs
2022-05-06 11:11:06 +03:00
akifoq
34590176eb
Fix IF:<{ and IFNOT:<{ empty continuation case
...
The boolean value should be DROPped in the case the continuation is empty.
2022-05-06 11:06:48 +03:00
OmicronTau
703bcd6e32
Add tests and fixes for modpow2, muldivmod
2022-05-06 10:43:53 +03:00
Alex Melman
bab4c1637e
Automatically integrates git build information into executables.
...
Usage:
func.exe -V
adnl-pong -V
validator-engine -V
and so on.
Result will be shown in the following format:
Func build information: [ Commit: d8b751d7a5
, Date: 2021-02-27 14:34:41 +0200]
2021-02-27 14:34:43 +03:00
Alex Melman
41a3418b7b
Adds command line parameter -V that shows build version to the binaries.
...
Build number controlled in top level CMakeLists.txt file via -DBUILD_VERSION variable.
Usage:
adnl-pong -V
validator-engine -V
and so on.
2021-02-27 14:34:41 +03:00
ton
f064b1047a
pow-testgiver support
2020-07-06 17:07:20 +03:00
ton
4e2624459b
integrating the existing state of TON Storage / TON Payments / CPS Fift development branches
2020-05-27 22:10:46 +04:00
ton
040df63c98
minor improvements and bugfixes
2020-05-07 10:35:23 +04:00
ton
eecf05ca59
bugfixes + tonlib update
2020-04-30 15:04:47 +04:00
ton
9f008b129f
updated submodules, bugfixes
...
- added new fift/func code for validator complaint creation
- bugfixes in validator
- updates in tonlib
- new versions of rocksdb/abseil
- hardfork support
2020-04-27 16:01:46 +04:00
ton
be9c34c62d
bugfixes
2020-04-10 23:06:01 +04:00
ton
9bff9285b8
bugfix in config sc + docs
2020-04-01 13:07:29 +04:00
ton
4b5dd4525e
updated lite-client
2020-03-31 17:11:56 +04:00
ton
4dd5eea11f
added support for config change proposals
...
- added some fift scripts for the config change proposal voting
- added validator-engine-console support for the config change proposal voting
- additional sanity checks in catchain
- unsafe slow catchain resync method
2020-03-30 17:20:45 +04:00
ton
a31f8d4424
bugfixed + crypto update
...
- compiles vs BoringSSL
- config proposal/vote fift code
- bugfixes in catchain
- other small fixes
2020-03-27 18:59:00 +04:00
ton
9f351fc29f
emergency update
2020-03-24 03:32:16 +04:00
ton
ba76f1404e
vm: bugfixes
2020-03-02 17:52:55 +04:00
ton
dd4ac0f440
vm bugfixes
2020-02-28 18:59:47 +04:00
ton
e27fb1e09c
updated vm (breaking compatibility)
...
- updated vm
- new actor scheduler
- updated tonlib
- updated DNS smartcontract
2020-02-28 14:28:47 +04:00
ton
efd47af432
updated tonlib + fixes in vm
2020-02-20 19:56:18 +04:00
ton
28735ddc9e
bugfixes
2020-02-17 14:18:59 +04:00
ton
a73d202ba2
updated func and tonlib
2020-02-15 20:03:17 +04:00
ton
493ae2410c
rldp-http-proxy: use tonlib
...
- rldp-http-proxy used TONLib to resolve domains via DNS smartcontract
- updated tonlib
- bugfixes
2020-02-12 00:14:16 +04:00
ton
1de39f5d7c
bugfixes + doc update
2020-02-08 23:24:49 +04:00
ton
77842f9b63
updated tonlib
...
- updated tonlib
- updated validator
- updated documentation
- first version of http over rldp proxy
2020-02-06 21:56:46 +04:00
ton
53ec9684bd
updated liteserver
...
- new methods for liteserver/liteclient
- added ADNL/DHT client-only work mode
- fixed crash in ADNL
2020-02-02 16:53:37 +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
ceaed40ac4
updated fift + bugfixes
2019-12-05 16:51:51 +04:00
ton
090e0c16eb
slightly changed block format
...
- small change in block format
- added config in blockchain explorer
- bugfixes
2019-11-28 18:44:14 +04:00
ton
e30d98eb30
new db
...
new database
fift/func bugfixes
2019-11-15 18:02:37 +04:00
ton
c860ce3d1e
updated smartcontracts
...
- updated smartcontracts
- updated fullnode database layout
- fixed memory leak in blockchain-explorer
- updated tonlib
2019-10-23 17:43:50 +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
38c3e39066
func/fift: bugfixes
2019-10-09 20:00:54 +04:00
ton
29deff15c3
updated fift
...
updated fift
updated tonlib
2019-10-05 21:21:24 +04:00
ton
7c595294b6
updated tonlib
2019-10-04 21:17:47 +04:00
ton
dd745485e2
update tonlib
...
tonlib: update
collator: increased collation speed for masterchain
fift: bugfixes
2019-10-04 16:08:02 +04:00
ton
7ea00ebfcf
updated tonlib, fixed bugs
...
updated tonlib
fixed bugs in func
validator: partial support for hardforks
liteserver: support for waitMasterchainBlock prefix
transactions: support for gas flat rate
2019-10-03 17:04:52 +04:00
ton
841d5ebac2
updated fift
...
updated fift
updated some smartcontracts
added partial support for hardforks
2019-10-01 14:07:35 +04:00
ton
2845f9a2cc
liteserver: bugfix
...
liteserver/liteclient: fixed bug in proof
validator: added stats
smartcontracts: updates
2019-09-30 16:49:45 +04:00
ton
fd7a8de970
updated tonlib, block routing
...
- upated tonlib
- fixed bug in message routing
2019-09-28 11:44:38 +04:00
ton
ac3eb1a7b8
tonlib updated
...
- updated tonlib
- added documentation
- speed up full node synchronization
2019-09-25 17:50:58 +04:00