[PATCH] D129464: [Clang][CodeGen] Set FP options of builder at entry to compound statement

Serge Pavlov via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Sun Jul 10 23:49:06 PDT 2022


sepavloff created this revision.
sepavloff added reviewers: kpn, rjmccall, aaron.ballman.
Herald added subscribers: jsji, pengfei.
Herald added a project: All.
sepavloff requested review of this revision.
Herald added a project: clang.

Previously compilation of a few tests produced incorrect code. In them FP
pragmas were ignored and the resulting code contained constrained intrinsics
with rounding mode and/or exception behavior determined by command line
options only. Compiler creates correct AST for this tests, but FP options
were ignored in code generator because builder object was not set up properly.
To fix code generation builder object now is updated according to FP options
stored in CompoundStmt.

This change elucidated an issue in template instantiations, - it occured
with FP options taken from the point of instantiation. The issue is also
fixed.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D129464

Files:
  clang/include/clang/AST/Stmt.h
  clang/lib/CodeGen/CGStmt.cpp
  clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
  clang/test/CodeGen/X86/avx512dq-builtins-constrained.c
  clang/test/CodeGen/aarch64-v8.2a-neon-intrinsics-constrained.c
  clang/test/CodeGen/complex-strictfp.c
  clang/test/CodeGen/pragma-fenv_access.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D129464.443564.patch
Type: text/x-patch
Size: 30140 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20220711/6fd89286/attachment-0001.bin>


More information about the cfe-commits mailing list