commit | 91f6f07bb88fd39be8b5e0fd2fdf12903316c662 | [log] [tgz] |
---|---|---|
author | Justin Lebar <jlebar@google.com> | Mon May 23 20:19:56 2016 +0000 |
committer | Justin Lebar <jlebar@google.com> | Mon May 23 20:19:56 2016 +0000 |
tree | 4b5dec7b7f5da854be2c0db872c00adb954bfa3a | |
parent | 66a891962b3dd66cff48aa27a613e17a3ecae389 [diff] [blame] |
[CUDA] Add -fcuda-approx-transcendentals flag. Summary: This lets us emit e.g. sin.approx.f32. See http://docs.nvidia.com/cuda/parallel-thread-execution/#floating-point-instructions-sin Reviewers: rnk Subscribers: tra, cfe-commits Differential Revision: http://reviews.llvm.org/D20493 llvm-svn: 270484
diff --git a/clang/lib/Frontend/CompilerInvocation.cpp b/clang/lib/Frontend/CompilerInvocation.cpp index c5f839e..852801a 100644 --- a/clang/lib/Frontend/CompilerInvocation.cpp +++ b/clang/lib/Frontend/CompilerInvocation.cpp
@@ -1616,6 +1616,9 @@ if (Opts.CUDAIsDevice && Args.hasArg(OPT_fcuda_flush_denormals_to_zero)) Opts.CUDADeviceFlushDenormalsToZero = 1; + if (Opts.CUDAIsDevice && Args.hasArg(OPT_fcuda_approx_transcendentals)) + Opts.CUDADeviceApproxTranscendentals = 1; + if (Opts.ObjC1) { if (Arg *arg = Args.getLastArg(OPT_fobjc_runtime_EQ)) { StringRef value = arg->getValue();