[SAoC] MLIR Support for LDC

Roberto Rosmaninho Robertogrosmaninho at gmail.com
Tue Dec 17 03:18:10 UTC 2019

Hi everyone,

Sorry for not writing updates in a while, on this stage, I'm more 
fixing bugs than making advances on the project. However, 
finally, all opaque operations are now dialect operations!! It 
means that the operations are no more just string, they have 
builders, types, verifiers and can return error messages if you 
try to build something wrong. More than that, now it's possible 
to start a new phase that we can translate D to other dialects, 
including those ones used by TensorFlow. For the end of this 
project, I may try to build the code that will translate D 
Dialect for the LLVM IR dialect and see how correlated it is with 

For now, I have just 2 more bugs to fix: IfStatement that 
recently had some updates on LDC and generates arguments for 
blocks to work as phi nodes for loops and branches.

Some tests are available and using LIT with FileCheck, so if you 
want to how D Dialect looks like the tests ate under the 
ldc/tests/codegen_mlir directory on this repository: 

The project works with the last version of LLVM, MLIR and LDC - 
with commits until 12/14/20

Roberto Rosmaninho

More information about the Digitalmars-d mailing list