[PATCH] [DWARF] Fix a few corner cases in expression emission
Adrian Prantl
aprantl at apple.com
Mon Jun 8 13:24:09 PDT 2015
> We could also be in the case that N == E. I think the right thing to do is actually to put the AddOpStackValue(); here, AddExpression below will add the DW_OP_piece if there is one.
That's what I meant with the regex-style question at the end of "DW_OP_reg Offset DW_OP_plus (DW_OP_bit_Piece x y)?".
My point was that in either case, the DW_OP_plus is the last arithmetic operation and that in the absence of a DW_OP_deref we should not be emitting an (=breg) register-//indirect// value.
The IR-expression
[machinereg no. 5] 4 DW_OP_plus
should translate into
DW_OP_reg DW_OP_constu 5 DW_OP_plus
and not into
DW_OP_breg 5 DW_OP_constu 5 DW_OP_plus
REPOSITORY
rL LLVM
http://reviews.llvm.org/D10302
EMAIL PREFERENCES
http://reviews.llvm.org/settings/panel/emailpreferences/
More information about the llvm-commits
mailing list