Commit Graph

15 Commits

Author SHA1 Message Date
Nikolay Nikolov
d38dbcac8f * use tcallparanode.parasym to find the tparavarsym in twasmcallnode.pass_typecheck 2023-06-11 09:29:07 +03:00
Nikolay Nikolov
e6cbdba0bd * fixed crash in twasmcallnode.pass_typecheck when there is no procdefinition (for generic methods) 2023-06-11 09:23:56 +03:00
Nikolay Nikolov
c117c0abf5 * fixed another crash, introduced in 6ff566350c 2023-06-11 09:06:59 +03:00
Nikolay Nikolov
3d55ac9d09 * fixed bug, introduced in 6ff566350c, due to
missing parenthesis
2023-06-11 09:01:07 +03:00
Nikolay Nikolov
6ff566350c * disallow passing WebAssembly reference types as untyped var/constref/const parameters 2023-06-11 08:56:27 +03:00
Nikolay Nikolov
3c58f26e83 * thlcgwasm.g_checkexceptions renamed .g_maybe_checkforexceptions, added also as
an empty virtual method in thlcgobj and modified the WebAssembly
  implementation, so that it can be called from any exceptions mode (so it
  emits no code in exception modes that don't require it, instead of generating
  an internal error). This will allow .g_maybe_checkforexceptions to be called
  from the generic parts of the code generator, after calls to systemprocs that
  could raise an exceptions.
2021-10-05 17:54:35 +03:00
Nikolay Nikolov
7afb665c92 + insert exception flag check and branch after each function call, when
compiling in WebAssembly branchful exceptions mode
2021-10-05 02:26:13 +03:00
Nikolay Nikolov
324382d3a5 * use create_functype to determine accurately the number of parameters to
discard in twasmcallnode.do_release_unused_return_value. This fixes
  various stack tracking bugs when a constructor is invoking another
  constructor, etc.
2021-09-18 17:59:50 +03:00
Nikolay Nikolov
fa36141649 * fixed the stack tracking in twasmcallnode.do_release_unused_return_value for
ret_in_param function calls
2021-09-18 16:28:14 +03:00
nickysn
9fa61a6c9f - removed the discardresult proc directive
git-svn-id: trunk@49017 -
2021-03-20 01:22:43 +00:00
nickysn
7e958e0a35 + introduced the discardresult directive and declared the UniqueString()
overloads, using this directive

git-svn-id: branches/wasm@48283 -
2021-01-21 21:42:07 +00:00
nickysn
2bdd089645 - removed unused parameters from g_adjust_stack_after_call for WebAssembly
git-svn-id: branches/wasm@48259 -
2021-01-21 04:41:48 +00:00
nickysn
0a0ec1de65 + adjust the stack properly on function calls
git-svn-id: branches/wasm@48037 -
2021-01-04 13:08:58 +00:00
nickysn
f86665b97f * drop unused return values from the stack
git-svn-id: branches/wasm@48036 -
2021-01-04 12:44:11 +00:00
nickysn
c9ee72b05a * the compiler/wasm directory renamed compiler/wasm32
git-svn-id: branches/wasm@46251 -
2020-08-05 14:19:18 +00:00