From: LLVM Packaging Team Date: Thu, 11 Jul 2019 03:08:05 +0000 (+0100) Subject: llvm-6.0-NVPTX-addrspaces X-Git-Tag: archive/raspbian/1%6.0.1-12+rpi1~3 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=a0d11a9cbb4c6ca3d9eac58cc7e5d955a33dcaff;p=llvm-toolchain-6.0.git llvm-6.0-NVPTX-addrspaces Gbp-Pq: Topic julia Gbp-Pq: Name llvm-6.0-NVPTX-addrspaces.patch --- diff --git a/lib/Target/NVPTX/NVPTXISelLowering.cpp b/lib/Target/NVPTX/NVPTXISelLowering.cpp index f1e4251a..73d49f5d 100644 --- a/lib/Target/NVPTX/NVPTXISelLowering.cpp +++ b/lib/Target/NVPTX/NVPTXISelLowering.cpp @@ -1248,6 +1248,14 @@ SDValue NVPTXTargetLowering::getSqrtEstimate(SDValue Operand, SelectionDAG &DAG, } } +bool NVPTXTargetLowering::isNoopAddrSpaceCast(unsigned SrcAS, + unsigned DestAS) const { + assert(SrcAS != DestAS && "Expected different address spaces!"); + + return (SrcAS == ADDRESS_SPACE_GENERIC || SrcAS > ADDRESS_SPACE_LOCAL) && + (DestAS == ADDRESS_SPACE_GENERIC || DestAS > ADDRESS_SPACE_LOCAL); +} + SDValue NVPTXTargetLowering::LowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const { SDLoc dl(Op); diff --git a/lib/Target/NVPTX/NVPTXISelLowering.h b/lib/Target/NVPTX/NVPTXISelLowering.h index ef04a857..68a9a719 100644 --- a/lib/Target/NVPTX/NVPTXISelLowering.h +++ b/lib/Target/NVPTX/NVPTXISelLowering.h @@ -443,6 +443,8 @@ public: const NVPTXSubtarget &STI); SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const override; + bool isNoopAddrSpaceCast(unsigned SrcAS, unsigned DestAS) const override; + SDValue LowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const; const char *getTargetNodeName(unsigned Opcode) const override;