[all-commits] [llvm/llvm-project] 9523cf: [AST] Fix handling of long double and bool in __bu...
Erik Pilkington via All-commits
all-commits at lists.llvm.org
Wed Sep 2 12:09:11 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 9523cf02c22a83bece8d81080693a0cbf4098bb5
https://github.com/llvm/llvm-project/commit/9523cf02c22a83bece8d81080693a0cbf4098bb5
Author: Erik Pilkington <erik.pilkington at gmail.com>
Date: 2020-09-02 (Wed, 02 Sep 2020)
Changed paths:
M clang/include/clang/Basic/DiagnosticASTKinds.td
M clang/lib/AST/ExprConstant.cpp
M clang/test/SemaCXX/constexpr-builtin-bit-cast.cpp
Log Message:
-----------
[AST] Fix handling of long double and bool in __builtin_bit_cast
On x86, long double has 6 unused trailing bytes. This patch changes the
constant evaluator to treat them as though they were padding bytes, so reading
from them results in an indeterminate value, and nothing is written for them.
Also, fix a similar bug with bool, but instead of treating the unused bits as
padding, enforce that they're zero.
Differential revision: https://reviews.llvm.org/D76323
Commit: 2d11ae0a40e209a7b91aeff0c9cf28fe41dce93c
https://github.com/llvm/llvm-project/commit/2d11ae0a40e209a7b91aeff0c9cf28fe41dce93c
Author: Erik Pilkington <erik.pilkington at gmail.com>
Date: 2020-09-02 (Wed, 02 Sep 2020)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
Log Message:
-----------
Fix a -Wparenthesis warning in 8ff44e644bb7, NFC
Compare: https://github.com/llvm/llvm-project/compare/e0e7eb2e2648...2d11ae0a40e2
More information about the All-commits
mailing list