diff options
author | Matt Arsenault <Matthew.Arsenault@amd.com> | 2019-11-06 17:10:52 -0800 |
---|---|---|
committer | Matt Arsenault <arsenm2@gmail.com> | 2020-02-04 12:59:21 -0500 |
commit | a3c814d23497bc71b8ed53c35f773366aff02922 (patch) | |
tree | d6e42ab8a9b6747d7eeaf674484184c22e265702 /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | fce1eefb467e2bc3cd737ce78386e4970beefb7a (diff) | |
download | llvm-a3c814d23497bc71b8ed53c35f773366aff02922.zip llvm-a3c814d23497bc71b8ed53c35f773366aff02922.tar.gz llvm-a3c814d23497bc71b8ed53c35f773366aff02922.tar.bz2 |
Separately track input and output denormal mode
AMDGPU and x86 at least both have separate controls for whether
denormal results are flushed on output, and for whether denormals are
implicitly treated as 0 as an input. The current DAGCombiner use only
really cares about the input treatment of denormals.
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
-rw-r--r-- | clang/lib/Frontend/CompilerInvocation.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/lib/Frontend/CompilerInvocation.cpp b/clang/lib/Frontend/CompilerInvocation.cpp index 9f51c847..319f0d5 100644 --- a/clang/lib/Frontend/CompilerInvocation.cpp +++ b/clang/lib/Frontend/CompilerInvocation.cpp @@ -1286,14 +1286,14 @@ static bool ParseCodeGenArgs(CodeGenOptions &Opts, ArgList &Args, InputKind IK, if (Arg *A = Args.getLastArg(OPT_fdenormal_fp_math_EQ)) { StringRef Val = A->getValue(); Opts.FPDenormalMode = llvm::parseDenormalFPAttribute(Val); - if (Opts.FPDenormalMode == llvm::DenormalMode::Invalid) + if (!Opts.FPDenormalMode.isValid()) Diags.Report(diag::err_drv_invalid_value) << A->getAsString(Args) << Val; } if (Arg *A = Args.getLastArg(OPT_fdenormal_fp_math_f32_EQ)) { StringRef Val = A->getValue(); Opts.FP32DenormalMode = llvm::parseDenormalFPAttribute(Val); - if (Opts.FP32DenormalMode == llvm::DenormalMode::Invalid) + if (!Opts.FP32DenormalMode.isValid()) Diags.Report(diag::err_drv_invalid_value) << A->getAsString(Args) << Val; } |