aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
diff options
context:
space:
mode:
authorSerge Pavlov <sepavloff@gmail.com>2020-08-24 14:02:26 +0700
committerSerge Pavlov <sepavloff@gmail.com>2020-09-04 16:47:10 +0700
commita633da5391b0e42c0185132e8b532ae9bc34489f (patch)
tree8e0e36267d0ed508b0426f8ca6202d45f5b119f7 /clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
parentf9ad112770ece2e3612ddcdd6a4157bc0b0faf31 (diff)
downloadllvm-a633da5391b0e42c0185132e8b532ae9bc34489f.zip
llvm-a633da5391b0e42c0185132e8b532ae9bc34489f.tar.gz
llvm-a633da5391b0e42c0185132e8b532ae9bc34489f.tar.bz2
[FPEnv] Partially implement #pragma STDC FENV_ROUND
This change implements pragma STDC FENV_ROUND, which is introduced by the extension to standard (TS 18661-1). The pragma is implemented only in frontend, it sets apprpriate state of FPOptions stored in Sema. Use of these bits in constant evaluation adn/or code generator is not in the scope of this change. Parser issues warning on unsuppored pragma when it encounteres pragma STDC FENV_ROUND, however it makes syntax checks and updates Sema state as if the pragma were supported. Primary purpose of the partial implementation is to facilitate development of non-default floating poin environment. Previously a developer cannot set non-default rounding mode in sources, this mades preparing tests for say constant evaluation substantially complicated. Differential Revision: https://reviews.llvm.org/D86921
Diffstat (limited to 'clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp')
0 files changed, 0 insertions, 0 deletions