[all-commits] [llvm/llvm-project] ce8024: [CLANG][PATCH][FPEnv] Add support for option -ffp-...

Melanie Blower via All-commits all-commits at lists.llvm.org
Tue Jul 20 13:02:50 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ce8024e8ff76e7be8b9ffa1a39d1dc9310bf74c7
      https://github.com/llvm/llvm-project/commit/ce8024e8ff76e7be8b9ffa1a39d1dc9310bf74c7
  Author: Melanie Blower <melanie.blower at intel.com>
  Date:   2021-07-20 (Tue, 20 Jul 2021)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/docs/UsersManual.rst
    M clang/include/clang/Basic/FPOptions.def
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Basic/PragmaKinds.h
    M clang/include/clang/Basic/TargetInfo.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Lex/PreprocessorOptions.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Basic/Targets/OSTargets.h
    M clang/lib/Basic/Targets/X86.h
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Lex/PPMacroExpansion.cpp
    M clang/lib/Parse/ParsePragma.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaAttr.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/test/CodeGen/fp-floatcontrol-pragma.cpp
    M clang/test/Preprocessor/init-aarch64.c
    M clang/test/Preprocessor/init-arm.c
    M clang/test/Preprocessor/init-mips.c
    M clang/test/Preprocessor/init-ppc.c
    M clang/test/Preprocessor/init-ppc64.c
    M clang/test/Preprocessor/init-s390x.c
    M clang/test/Preprocessor/init-v7k-compat.c
    M clang/test/Preprocessor/init-x86.c
    M clang/test/Preprocessor/init.c
    A clang/test/Preprocessor/predefined-flteval-macro.c

  Log Message:
  -----------
  [CLANG][PATCH][FPEnv] Add support for option -ffp-eval-method and extend #pragma float_control similarly

The Intel compiler ICC supports the option "-fp-model=(source|double|extended)"
which causes the compiler to use a wider type for intermediate floating point
calculations. Also supported is a way to embed this effect in the source
program with #pragma float_control(source|double|extended).
This patch extends pragma float_control syntax, and also adds support
for a new floating point option "-ffp-eval-method=(source|double|extended)".
source: intermediate results use source precision
double: intermediate results use double precision
extended: intermediate results use extended precision

Reviewed By: Aaron Ballman

Differential Revision: https://reviews.llvm.org/D93769




More information about the All-commits mailing list