Kyrill Tkachov (ktkachov) <[email protected]>) commented on the code:
> +++ gcc/config/wasm/wasm.h > @@ -0,0 +174,4 @@ > +#define FUNCTION_MODE SImode > +#define CASE_VECTOR_MODE SImode > + > +#define POINTER_SIZE 32 Are you trying to follow the https://github.com/WebAssembly/tool-conventions/blob/main/BasicCABI.md document? I think there are some inconsistencies with that: long double is emitted as 8-byte DFmode, TImode is disabled, plain char is unsigned, and wchar_t is long. The WebAssembly Basic C ABI requires binary128 long double, 128-bit integers as two i64s, signed plain char, and wchar_t as int. -- https://forge.sourceware.org/gcc/gcc-TEST/pulls/160#issuecomment-6591
