[llvm] r233583 - [NVPTX] Associate a minimum PTX version for each SM architecture

Eli Bendersky eliben at google.com
Mon Mar 30 15:37:42 PDT 2015


Great, Justin. Thanks

On Mon, Mar 30, 2015 at 12:30 PM, Justin Holewinski <jholewinski at nvidia.com>
wrote:

> Author: jholewinski
> Date: Mon Mar 30 14:30:55 2015
> New Revision: 233583
>
> URL: http://llvm.org/viewvc/llvm-project?rev=233583&view=rev
> Log:
> [NVPTX] Associate a minimum PTX version for each SM architecture
>
> When a new SM architecture is introduced, it is only supported by the
> current PTX version and later.  Make sure we are using at least the
> minimum PTX version for the target architecture.
>
> This also removes support for PTX ISA < 3.2.
>
> Added:
>     llvm/trunk/test/CodeGen/NVPTX/sm-version-50.ll
> Removed:
>     llvm/trunk/test/CodeGen/NVPTX/ptx-version-30.ll
>     llvm/trunk/test/CodeGen/NVPTX/ptx-version-31.ll
> Modified:
>     llvm/trunk/lib/Target/NVPTX/NVPTX.td
>     llvm/trunk/test/CodeGen/NVPTX/sm-version-30.ll
>     llvm/trunk/test/CodeGen/NVPTX/sm-version-32.ll
>     llvm/trunk/test/CodeGen/NVPTX/sm-version-35.ll
>     llvm/trunk/test/CodeGen/NVPTX/sm-version-37.ll
>     llvm/trunk/test/CodeGen/NVPTX/sm-version-52.ll
>     llvm/trunk/test/CodeGen/NVPTX/sm-version-53.ll
>
> Modified: llvm/trunk/lib/Target/NVPTX/NVPTX.td
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/NVPTX/NVPTX.td?rev=233583&r1=233582&r2=233583&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Target/NVPTX/NVPTX.td (original)
> +++ llvm/trunk/lib/Target/NVPTX/NVPTX.td Mon Mar 30 14:30:55 2015
> @@ -46,10 +46,6 @@ def SM53 : SubtargetFeature<"sm_53", "Sm
>                              "Target SM 5.3">;
>
>  // PTX Versions
> -def PTX30 : SubtargetFeature<"ptx30", "PTXVersion", "30",
> -                             "Use PTX version 3.0">;
> -def PTX31 : SubtargetFeature<"ptx31", "PTXVersion", "31",
> -                             "Use PTX version 3.1">;
>  def PTX32 : SubtargetFeature<"ptx32", "PTXVersion", "32",
>                               "Use PTX version 3.2">;
>  def PTX40 : SubtargetFeature<"ptx40", "PTXVersion", "40",
> @@ -69,12 +65,12 @@ class Proc<string Name, list<SubtargetFe
>  def : Proc<"sm_20", [SM20]>;
>  def : Proc<"sm_21", [SM21]>;
>  def : Proc<"sm_30", [SM30]>;
> -def : Proc<"sm_32", [SM32]>;
> +def : Proc<"sm_32", [SM32, PTX40]>;
>  def : Proc<"sm_35", [SM35]>;
> -def : Proc<"sm_37", [SM37]>;
> -def : Proc<"sm_50", [SM50]>;
> -def : Proc<"sm_52", [SM52]>;
> -def : Proc<"sm_53", [SM53]>;
> +def : Proc<"sm_37", [SM37, PTX41]>;
> +def : Proc<"sm_50", [SM50, PTX40]>;
> +def : Proc<"sm_52", [SM52, PTX41]>;
> +def : Proc<"sm_53", [SM53, PTX42]>;
>
>
>  def NVPTXInstrInfo : InstrInfo {
>
> Removed: llvm/trunk/test/CodeGen/NVPTX/ptx-version-30.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/NVPTX/ptx-version-30.ll?rev=233582&view=auto
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/NVPTX/ptx-version-30.ll (original)
> +++ llvm/trunk/test/CodeGen/NVPTX/ptx-version-30.ll (removed)
> @@ -1,6 +0,0 @@
> -; RUN: llc < %s -march=nvptx -mcpu=sm_20 -mattr=ptx30 | FileCheck %s
> -; RUN: llc < %s -march=nvptx64 -mcpu=sm_20 -mattr=ptx30 | FileCheck %s
> -
> -
> -; CHECK: .version 3.0
> -
>
> Removed: llvm/trunk/test/CodeGen/NVPTX/ptx-version-31.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/NVPTX/ptx-version-31.ll?rev=233582&view=auto
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/NVPTX/ptx-version-31.ll (original)
> +++ llvm/trunk/test/CodeGen/NVPTX/ptx-version-31.ll (removed)
> @@ -1,6 +0,0 @@
> -; RUN: llc < %s -march=nvptx -mcpu=sm_20 -mattr=ptx31 | FileCheck %s
> -; RUN: llc < %s -march=nvptx64 -mcpu=sm_20 -mattr=ptx31 | FileCheck %s
> -
> -
> -; CHECK: .version 3.1
> -
>
> Modified: llvm/trunk/test/CodeGen/NVPTX/sm-version-30.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/NVPTX/sm-version-30.ll?rev=233583&r1=233582&r2=233583&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/NVPTX/sm-version-30.ll (original)
> +++ llvm/trunk/test/CodeGen/NVPTX/sm-version-30.ll Mon Mar 30 14:30:55 2015
> @@ -2,5 +2,6 @@
>  ; RUN: llc < %s -march=nvptx64 -mcpu=sm_30 | FileCheck %s
>
>
> +; CHECK: .version 3.2
>  ; CHECK: .target sm_30
>
>
> Modified: llvm/trunk/test/CodeGen/NVPTX/sm-version-32.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/NVPTX/sm-version-32.ll?rev=233583&r1=233582&r2=233583&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/NVPTX/sm-version-32.ll (original)
> +++ llvm/trunk/test/CodeGen/NVPTX/sm-version-32.ll Mon Mar 30 14:30:55 2015
> @@ -2,5 +2,6 @@
>  ; RUN: llc < %s -march=nvptx64 -mcpu=sm_32 | FileCheck %s
>
>
> +; CHECK: .version 4.0
>  ; CHECK: .target sm_32
>
>
> Modified: llvm/trunk/test/CodeGen/NVPTX/sm-version-35.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/NVPTX/sm-version-35.ll?rev=233583&r1=233582&r2=233583&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/NVPTX/sm-version-35.ll (original)
> +++ llvm/trunk/test/CodeGen/NVPTX/sm-version-35.ll Mon Mar 30 14:30:55 2015
> @@ -2,5 +2,6 @@
>  ; RUN: llc < %s -march=nvptx64 -mcpu=sm_35 | FileCheck %s
>
>
> +; CHECK: .version 3.2
>  ; CHECK: .target sm_35
>
>
> Modified: llvm/trunk/test/CodeGen/NVPTX/sm-version-37.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/NVPTX/sm-version-37.ll?rev=233583&r1=233582&r2=233583&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/NVPTX/sm-version-37.ll (original)
> +++ llvm/trunk/test/CodeGen/NVPTX/sm-version-37.ll Mon Mar 30 14:30:55 2015
> @@ -2,5 +2,6 @@
>  ; RUN: llc < %s -march=nvptx64 -mcpu=sm_37 | FileCheck %s
>
>
> +; CHECK: .version 4.1
>  ; CHECK: .target sm_37
>
>
> Added: llvm/trunk/test/CodeGen/NVPTX/sm-version-50.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/NVPTX/sm-version-50.ll?rev=233583&view=auto
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/NVPTX/sm-version-50.ll (added)
> +++ llvm/trunk/test/CodeGen/NVPTX/sm-version-50.ll Mon Mar 30 14:30:55 2015
> @@ -0,0 +1,7 @@
> +; RUN: llc < %s -march=nvptx -mcpu=sm_50 | FileCheck %s
> +; RUN: llc < %s -march=nvptx64 -mcpu=sm_50 | FileCheck %s
> +
> +
> +; CHECK: .version 4.0
> +; CHECK: .target sm_50
> +
>
> Modified: llvm/trunk/test/CodeGen/NVPTX/sm-version-52.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/NVPTX/sm-version-52.ll?rev=233583&r1=233582&r2=233583&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/NVPTX/sm-version-52.ll (original)
> +++ llvm/trunk/test/CodeGen/NVPTX/sm-version-52.ll Mon Mar 30 14:30:55 2015
> @@ -2,5 +2,6 @@
>  ; RUN: llc < %s -march=nvptx64 -mcpu=sm_52 | FileCheck %s
>
>
> +; CHECK: .version 4.1
>  ; CHECK: .target sm_52
>
>
> Modified: llvm/trunk/test/CodeGen/NVPTX/sm-version-53.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/NVPTX/sm-version-53.ll?rev=233583&r1=233582&r2=233583&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/NVPTX/sm-version-53.ll (original)
> +++ llvm/trunk/test/CodeGen/NVPTX/sm-version-53.ll Mon Mar 30 14:30:55 2015
> @@ -2,5 +2,6 @@
>  ; RUN: llc < %s -march=nvptx64 -mcpu=sm_53 | FileCheck %s
>
>
> +; CHECK: .version 4.2
>  ; CHECK: .target sm_53
>
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150330/c4deebc4/attachment.html>


More information about the llvm-commits mailing list