adams381 wrote:

Reopened and rebased onto main. #201718 (the Expand base) landed, and the 
squash-merge deleted this PR's base branch, which auto-closed it.

The flatten logic is unchanged from the last review round: the callee 
reassembles the N scalar block args into the coerced struct and coerces back to 
the original type, and the call site reads each field from the coerce slot with 
cir.get_member + cir.load (the emitCoercionToMemory change you asked for on the 
Jun 10 threads) rather than extracting from a whole loaded value.

Replaying onto the now-merged Expand code took two mechanical adaptations. The 
AllocaOp create signature changed on current main, and the Ignore-drop loop's 
running block-argument index now advances by the flattened field count for 
canFlatten args, the same way it already does for Expand.

@andykaylor back up for review.


https://github.com/llvm/llvm-project/pull/201719
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to