[PATCH] D106585: Fix clang debug info irgen of i128 enums
Mike Hommey via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Dec 3 03:58:54 PST 2021
glandium added a comment.
So far, what I've found is that in some cases, DIEnumerator::get returns the same node for similar enumerator values in different enums that happen to have the same name and value (even if their bitwidth differs), but sometimes not.
For example, in one compilation I see:
DIEnumerator::get (Name={Data at 0x5575ee17ea38="nsNumberControlFrame_id", Length=23}, IsUnsigned: optimized out, Value={U={VAL=50, pVal=0x32}, BitWidth=8}, Context at 0x5575e8305da0.pImpl=0x5575e8307230) = 0x55760563a708
DIEnumerator::get (Name={Data at 0x5575ee17ea38="nsNumberControlFrame_id", Length=23}, IsUnsigned: optimized out, Value={U={VAL=50, pVal=0x32}, BitWidth=32}, Context at 0x5575e8305da0.pImpl=0x5575e8307230) = 0x5576067e7148
In another compilation of the same file with the same flags:
DIEnumerator::get (Name={Data at 0x561c659e0cc8="nsNumberControlFrame_id", Length=23}, IsUnsigned: optimized out, Value={U={VAL=50, pVal=0x32}, BitWidth=8}, Context at 0x561c5fb68da0.pImpl=0x561c5fb6a230) = 0x561c7ce9dbf8
DIEnumerator::get (Name={Data at 0x561c659e0cc8="nsNumberControlFrame_id", Length=23}, IsUnsigned: optimized out, Value={U={VAL=50, pVal=0x32}, BitWidth=32}, Context at 0x561c5fb68da0.pImpl=0x561c5fb6a230) = 0x561c7ce9dbf8
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D106585/new/
https://reviews.llvm.org/D106585
More information about the llvm-commits
mailing list