[PATCH] D72742: Don't assume promotable integers are zero/sign-extended already in x86-64 ABI.
Reid Kleckner via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Wed Jan 15 12:14:24 PST 2020
rnk added subscribers: rjmccall, chandlerc.
rnk added a comment.
+ at chandlerc @rjmccall
Didn't we work this out already when John added the alignment tracking stuff? I remember this bug involving libjpegturbo standalone assembly receiving a 32-bit argument, and then using the full 64-bit RDI register to read it, but clang stopped zero extending it. I thought the ABI doc was ambiguous at the time, and we studied GCC's behavior, and that is how we arrived at clang's current behavior. I am generally skeptical about changing behavior in this area just because the ABI doc says something now. It keeps changing. What did it say in the past? Shouldn't we pay more attention to that?
Found the libjpegturbo thing:
https://github.com/libjpeg-turbo/libjpeg-turbo/commit/498d9bc92fcf39124b6f08e57326944dedd2ddd6
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D72742/new/
https://reviews.llvm.org/D72742
More information about the cfe-commits
mailing list