================ @@ -1310,6 +1310,70 @@ def GetGlobalOp : CIR_Op<"get_global", let hasVerifier = 0; } +//===----------------------------------------------------------------------===// +// GetMemberOp +//===----------------------------------------------------------------------===// + +def GetMemberOp : CIR_Op<"get_member"> { + let summary = "Get the address of a member of a record"; + let description = [{ + The `cir.get_member` operation gets the address of a particular named + member from the input record. + + It expects a pointer to the base record as well as the name of the member + and its field index. ---------------- erichkeane wrote:
There is a bunch of 'legal' vs 'UB' things with common-initial sequence, particularly in C that might be interesting to opt based on, but I don't have any good ideas. https://github.com/llvm/llvm-project/pull/136383 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits