ARM first & default LDC
Max Haughton
maxhaton at gmail.com
Wed Dec 30 18:25:41 UTC 2020
On Wednesday, 30 December 2020 at 18:04:25 UTC, Ola Fosheim
Grøstad wrote:
> On Wednesday, 30 December 2020 at 17:49:43 UTC, Max Haughton
> wrote:
>> SSA basically gets you a lot of optimisations for "free"
>> (amortized) if you maintain the property but other than that a
>> simple backend is hugely faster than LLVM as evidenced by
>> languages moving away from LLVM for debug builds.
>
> Maybe it is possible to design a SSA that is very close to
> WASM? I think that tight code gen for WASM can be competitive
> as there is a desire to keep downloads small on the web.
WASM is a stack machine IIRC whereas most compiler optimisations
are traditionally stated as register machines so it would be more
productive to have WASM as a traditional backend.
I think any algorithms that rely on DAGs are also more efficient
with register IRs, so again it would be easy to have a
traditional SSA IR (probably with Block arguments instead of phi
because it's 2020) and convert to a stack machine afterwards.
More information about the Digitalmars-d
mailing list