python3kgae updated this revision to Diff 425697.
python3kgae added a comment.

Remove clang part change.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D124595/new/

https://reviews.llvm.org/D124595

Files:
  clang/test/CodeGenHLSL/Builtins/sin_f32.hlsl
  llvm/include/llvm/IR/CMakeLists.txt
  llvm/include/llvm/IR/Intrinsics.td
  llvm/include/llvm/IR/IntrinsicsDirectX.td
  llvm/lib/IR/Function.cpp


Index: llvm/lib/IR/Function.cpp
===================================================================
--- llvm/lib/IR/Function.cpp
+++ llvm/lib/IR/Function.cpp
@@ -36,6 +36,7 @@
 #include "llvm/IR/IntrinsicsAMDGPU.h"
 #include "llvm/IR/IntrinsicsARM.h"
 #include "llvm/IR/IntrinsicsBPF.h"
+#include "llvm/IR/IntrinsicsDirectX.h"
 #include "llvm/IR/IntrinsicsHexagon.h"
 #include "llvm/IR/IntrinsicsMips.h"
 #include "llvm/IR/IntrinsicsNVPTX.h"
Index: llvm/include/llvm/IR/IntrinsicsDirectX.td
===================================================================
--- /dev/null
+++ llvm/include/llvm/IR/IntrinsicsDirectX.td
@@ -0,0 +1,17 @@
+//===- IntrinsicsDirectX.td - Defines DirectX intrinsics ---*- tablegen 
-*-===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM 
Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+//
+// This file defines all of the DirectX-specific intrinsics.
+//
+//===----------------------------------------------------------------------===//
+
+// Specialized loads from packet
+let TargetPrefix = "dx" in {  // All intrinsics start with "llvm.dx."
+  def int_dx_sin_f32 : GCCBuiltin<"__builtin_dx_sin_f32">,
+              Intrinsic<[llvm_float_ty], [llvm_float_ty], [IntrNoMem]>;
+}
Index: llvm/include/llvm/IR/Intrinsics.td
===================================================================
--- llvm/include/llvm/IR/Intrinsics.td
+++ llvm/include/llvm/IR/Intrinsics.td
@@ -2047,3 +2047,4 @@
 include "llvm/IR/IntrinsicsWebAssembly.td"
 include "llvm/IR/IntrinsicsRISCV.td"
 include "llvm/IR/IntrinsicsVE.td"
+include "llvm/IR/IntrinsicsDirectX.td"
Index: llvm/include/llvm/IR/CMakeLists.txt
===================================================================
--- llvm/include/llvm/IR/CMakeLists.txt
+++ llvm/include/llvm/IR/CMakeLists.txt
@@ -8,6 +8,7 @@
 tablegen(LLVM IntrinsicsAMDGPU.h -gen-intrinsic-enums -intrinsic-prefix=amdgcn)
 tablegen(LLVM IntrinsicsARM.h -gen-intrinsic-enums -intrinsic-prefix=arm)
 tablegen(LLVM IntrinsicsBPF.h -gen-intrinsic-enums -intrinsic-prefix=bpf)
+tablegen(LLVM IntrinsicsDirectX.h -gen-intrinsic-enums -intrinsic-prefix=dx)
 tablegen(LLVM IntrinsicsHexagon.h -gen-intrinsic-enums 
-intrinsic-prefix=hexagon)
 tablegen(LLVM IntrinsicsMips.h -gen-intrinsic-enums -intrinsic-prefix=mips)
 tablegen(LLVM IntrinsicsNVPTX.h -gen-intrinsic-enums -intrinsic-prefix=nvvm)
Index: clang/test/CodeGenHLSL/Builtins/sin_f32.hlsl
===================================================================
--- /dev/null
+++ clang/test/CodeGenHLSL/Builtins/sin_f32.hlsl
@@ -0,0 +1,7 @@
+// RUN: %clang_cc1 -triple dxil-pc-shadermodel6.15-library -x hlsl -S 
-emit-llvm  -o - %s | FileCheck %s
+
+//CHECK:call float @llvm.dx.sin.f32
+
+float foo(float a) {
+  return __builtin_dx_sin_f32(a);
+}


Index: llvm/lib/IR/Function.cpp
===================================================================
--- llvm/lib/IR/Function.cpp
+++ llvm/lib/IR/Function.cpp
@@ -36,6 +36,7 @@
 #include "llvm/IR/IntrinsicsAMDGPU.h"
 #include "llvm/IR/IntrinsicsARM.h"
 #include "llvm/IR/IntrinsicsBPF.h"
+#include "llvm/IR/IntrinsicsDirectX.h"
 #include "llvm/IR/IntrinsicsHexagon.h"
 #include "llvm/IR/IntrinsicsMips.h"
 #include "llvm/IR/IntrinsicsNVPTX.h"
Index: llvm/include/llvm/IR/IntrinsicsDirectX.td
===================================================================
--- /dev/null
+++ llvm/include/llvm/IR/IntrinsicsDirectX.td
@@ -0,0 +1,17 @@
+//===- IntrinsicsDirectX.td - Defines DirectX intrinsics ---*- tablegen -*-===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+//
+// This file defines all of the DirectX-specific intrinsics.
+//
+//===----------------------------------------------------------------------===//
+
+// Specialized loads from packet
+let TargetPrefix = "dx" in {  // All intrinsics start with "llvm.dx."
+  def int_dx_sin_f32 : GCCBuiltin<"__builtin_dx_sin_f32">,
+              Intrinsic<[llvm_float_ty], [llvm_float_ty], [IntrNoMem]>;
+}
Index: llvm/include/llvm/IR/Intrinsics.td
===================================================================
--- llvm/include/llvm/IR/Intrinsics.td
+++ llvm/include/llvm/IR/Intrinsics.td
@@ -2047,3 +2047,4 @@
 include "llvm/IR/IntrinsicsWebAssembly.td"
 include "llvm/IR/IntrinsicsRISCV.td"
 include "llvm/IR/IntrinsicsVE.td"
+include "llvm/IR/IntrinsicsDirectX.td"
Index: llvm/include/llvm/IR/CMakeLists.txt
===================================================================
--- llvm/include/llvm/IR/CMakeLists.txt
+++ llvm/include/llvm/IR/CMakeLists.txt
@@ -8,6 +8,7 @@
 tablegen(LLVM IntrinsicsAMDGPU.h -gen-intrinsic-enums -intrinsic-prefix=amdgcn)
 tablegen(LLVM IntrinsicsARM.h -gen-intrinsic-enums -intrinsic-prefix=arm)
 tablegen(LLVM IntrinsicsBPF.h -gen-intrinsic-enums -intrinsic-prefix=bpf)
+tablegen(LLVM IntrinsicsDirectX.h -gen-intrinsic-enums -intrinsic-prefix=dx)
 tablegen(LLVM IntrinsicsHexagon.h -gen-intrinsic-enums -intrinsic-prefix=hexagon)
 tablegen(LLVM IntrinsicsMips.h -gen-intrinsic-enums -intrinsic-prefix=mips)
 tablegen(LLVM IntrinsicsNVPTX.h -gen-intrinsic-enums -intrinsic-prefix=nvvm)
Index: clang/test/CodeGenHLSL/Builtins/sin_f32.hlsl
===================================================================
--- /dev/null
+++ clang/test/CodeGenHLSL/Builtins/sin_f32.hlsl
@@ -0,0 +1,7 @@
+// RUN: %clang_cc1 -triple dxil-pc-shadermodel6.15-library -x hlsl -S -emit-llvm  -o - %s | FileCheck %s
+
+//CHECK:call float @llvm.dx.sin.f32
+
+float foo(float a) {
+  return __builtin_dx_sin_f32(a);
+}
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to