Alexey,

This breaks compilation of our cuda code which happens to transitively
include protobuf headers.
Can you, please, revert it for now until we figure out how RTTI should be
handled?

--Artem

On Tue, Jan 14, 2020 at 3:15 PM Alexey Bataev via cfe-commits <
cfe-commits@lists.llvm.org> wrote:

>
> Author: Alexey Bataev
> Date: 2020-01-14T18:12:06-05:00
> New Revision: 23058f9dd4d7e18239fd63b6da52549514b45fda
>
> URL:
> https://github.com/llvm/llvm-project/commit/23058f9dd4d7e18239fd63b6da52549514b45fda
> DIFF:
> https://github.com/llvm/llvm-project/commit/23058f9dd4d7e18239fd63b6da52549514b45fda.diff
>
> LOG: [OPENMP]Do not use RTTI by default for NVPTX devices.
>
> NVPTX does not support RTTI, so disable it by default.
>
> Added:
>     clang/test/Driver/openmp-offload-gpu.cpp
>
> Modified:
>     clang/lib/Driver/ToolChain.cpp
>
> Removed:
>
>
>
>
> ################################################################################
> diff  --git a/clang/lib/Driver/ToolChain.cpp
> b/clang/lib/Driver/ToolChain.cpp
> index cab97b1a601a..3ebbd30195b3 100644
> --- a/clang/lib/Driver/ToolChain.cpp
> +++ b/clang/lib/Driver/ToolChain.cpp
> @@ -68,7 +68,8 @@ static ToolChain::RTTIMode CalculateRTTIMode(const
> ArgList &Args,
>    }
>
>    // -frtti is default, except for the PS4 CPU.
> -  return (Triple.isPS4CPU()) ? ToolChain::RM_Disabled :
> ToolChain::RM_Enabled;
> +  return (Triple.isPS4CPU() || Triple.isNVPTX()) ? ToolChain::RM_Disabled
> +                                                 : ToolChain::RM_Enabled;
>  }
>
>  ToolChain::ToolChain(const Driver &D, const llvm::Triple &T,
>
> diff  --git a/clang/test/Driver/openmp-offload-gpu.cpp
> b/clang/test/Driver/openmp-offload-gpu.cpp
> new file mode 100644
> index 000000000000..9da7308506ae
> --- /dev/null
> +++ b/clang/test/Driver/openmp-offload-gpu.cpp
> @@ -0,0 +1,20 @@
> +///
> +/// Perform several driver tests for OpenMP offloading
> +///
> +
> +// REQUIRES: clang-driver
> +// REQUIRES: x86-registered-target
> +// REQUIRES: powerpc-registered-target
> +// REQUIRES: nvptx-registered-target
> +
> +///
> ###########################################################################
> +
> +/// PTXAS is passed -c flag by default when offloading to an NVIDIA
> device using OpenMP
> +/// Check that the flag is passed when -fopenmp-relocatable-target is
> used.
> +// RUN:   %clangxx -### -fopenmp=libomp
> -fopenmp-targets=nvptx64-nvidia-cuda \
> +// RUN:          -save-temps -no-canonical-prefixes %s -x c++ -c 2>&1 \
> +// RUN:   | FileCheck -check-prefix=CHK-RTTI %s
> +
> +// CHK-RTTI: clang{{.*}}" "-triple" "nvptx64-nvidia-cuda"
> +// CHK-RTTI-SAME: "-fno-rtti"
> +
>
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits@lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
>


-- 
--Artem Belevich
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to