From c26b3940c3207597b98bbe5331b886155b4441a9 Mon Sep 17 00:00:00 2001 From: Tim Renouf Date: Wed, 11 Sep 2019 07:26:39 +0000 Subject: [TLI][AMDGPU] AMDPAL does not have library functions Configure TLI to say that r600/amdgpu does not have any library functions, such that InstCombine does not do anything like turn sin/cos into the library function @tan with sufficient fast math flags. Differential Revision: https://reviews.llvm.org/D67406 Change-Id: I02f907d3e64832117ea9800e9f9285282856e5df llvm-svn: 371592 --- llvm/lib/Analysis/TargetLibraryInfo.cpp | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) (limited to 'llvm/lib/Analysis/TargetLibraryInfo.cpp') diff --git a/llvm/lib/Analysis/TargetLibraryInfo.cpp b/llvm/lib/Analysis/TargetLibraryInfo.cpp index 5bdc24ac291..23096969805 100644 --- a/llvm/lib/Analysis/TargetLibraryInfo.cpp +++ b/llvm/lib/Analysis/TargetLibraryInfo.cpp @@ -105,18 +105,8 @@ static void initialize(TargetLibraryInfoImpl &TLI, const Triple &T, TLI.setShouldSignExtI32Param(ShouldSignExtI32Param); if (T.getArch() == Triple::r600 || - T.getArch() == Triple::amdgcn) { - TLI.setUnavailable(LibFunc_ldexp); - TLI.setUnavailable(LibFunc_ldexpf); - TLI.setUnavailable(LibFunc_ldexpl); - TLI.setUnavailable(LibFunc_exp10); - TLI.setUnavailable(LibFunc_exp10f); - TLI.setUnavailable(LibFunc_exp10l); - TLI.setUnavailable(LibFunc_log10); - TLI.setUnavailable(LibFunc_log10f); - TLI.setUnavailable(LibFunc_log10l); - TLI.setUnavailable(LibFunc_printf); - } + T.getArch() == Triple::amdgcn) + TLI.disableAllFunctions(); // There are no library implementations of memcpy and memset for AMD gpus and // these can be difficult to lower in the backend. -- cgit v1.2.3