Ivan Krysak
1609bbe745
Restore the separate enum declaration node
2026-06-16 18:43:45 +02:00
Ivan Krysak
42a045a2b5
CliftEmitC: fix the header filtering direction
2026-06-15 17:32:35 +02:00
Pietro Fezzardi
4b125fc6c8
CliftEmitC: emit trailing struct padding
...
The type emitter printed inter-field padding but never the padding
between the end of the last field and the declared size of the
struct.
Since every struct is emitted packed annotation, any struct with
trailing padding had a wrong sizeof in C.
This commit fixes the problem by always printing trailing padding in
structs, unless user have explicitly opted out setting `ExplicitPadding`
to off.
2026-06-15 17:28:22 +02:00
Ivan Krysak
a8056e8cee
UnconfiguredNB: ensure binary lives long enough
2026-06-15 17:28:22 +02:00
Ivan Krysak
771d01f107
CliftEmitC: mark typedefs as commentable
2026-06-15 17:28:22 +02:00
Ivan Krysak
06a68a806e
CliftEmitC: prevent empty structs
2026-06-15 17:28:22 +02:00
Ivan Krysak
ea785998ec
Minor improvements
2026-06-15 11:47:41 +02:00
Lauri Vasama
04fe27b8e9
Migrate Clift users to CDataModel
2026-05-04 10:49:03 +03:00
Lauri Vasama
1c768919d6
Streamline header emission implementation
2026-04-30 15:09:16 +03:00
Lauri Vasama
b30b4feec9
Remove MLIRContext from TypeDefinitionEmitter API
2026-04-30 15:09:16 +03:00
Lauri Vasama
90e5dfd4c9
Pass MLIRContext by address
...
Passing by address is more conventional. This is what MLIR does most of
the time, and it avoids dereferences and addressofs everywhere.
2026-04-30 15:09:16 +03:00
Lauri Vasama
a338194eb7
Move namespace mlir::clift out of namespace mlir
2026-04-27 12:48:24 +03:00
Ivan Krysak
71845dcbbb
CliftEmitC: stop using mlir::clift namespace
2026-04-22 08:19:47 +00:00
Ivan Krysak
405eebcbd1
TypeDefinitionEmitter: emit comments
2026-04-22 06:33:56 +00:00
Ivan Krysak
6d76908858
Introduce TypeDefinitionEmitter
2026-04-22 06:33:38 +00:00