[llvm-branch-commits] [llvm] df2fcea - Revert "Revert "Revert "[release] Use the Bootstrapping build for building LLVM releases"""

2022-03-11 Thread Tom Stellard via llvm-branch-commits

Author: Tom Stellard
Date: 2022-03-11T10:13:59-08:00
New Revision: df2fcea78fb8496ab20551ea040872015fd54b5d

URL: 
https://github.com/llvm/llvm-project/commit/df2fcea78fb8496ab20551ea040872015fd54b5d
DIFF: 
https://github.com/llvm/llvm-project/commit/df2fcea78fb8496ab20551ea040872015fd54b5d.diff

LOG: Revert "Revert "Revert "[release] Use the Bootstrapping build for building 
LLVM releases"""

This reverts commit a9415df334f09c1bea51ce2be1684b4391eac245.

There are still bugs reported with the new bootstraping build.
See https://reviews.llvm.org/D121276#3375464

Added: 


Modified: 
llvm/utils/release/test-release.sh

Removed: 




diff  --git a/llvm/utils/release/test-release.sh 
b/llvm/utils/release/test-release.sh
index 009f9358145f3..e27e857935376 100755
--- a/llvm/utils/release/test-release.sh
+++ b/llvm/utils/release/test-release.sh
@@ -244,17 +244,16 @@ projects="llvm clang"
 if [ $do_clang_tools = "yes" ]; then
   projects="$projects clang-tools-extra"
 fi
-runtimes=""
 if [ $do_rt = "yes" ]; then
-  runtimes="$runtimes compiler-rt"
+  projects="$projects compiler-rt"
 fi
 if [ $do_libs = "yes" ]; then
-  runtimes="$runtimes libcxx"
+  projects="$projects libcxx"
   if [ $do_libcxxabi = "yes" ]; then
-runtimes="$runtimes libcxxabi"
+projects="$projects libcxxabi"
   fi
   if [ $do_libunwind = "yes" ]; then
-runtimes="$runtimes libunwind"
+projects="$projects libunwind"
   fi
 fi
 if [ $do_openmp = "yes" ]; then
@@ -381,7 +380,6 @@ function configure_llvmCore() {
 esac
 
 project_list=${projects// /;}
-runtime_list=${runtimes// /;}
 echo "# Using C compiler: $c_compiler"
 echo "# Using C++ compiler: $cxx_compiler"
 
@@ -394,7 +392,6 @@ function configure_llvmCore() {
 -DCMAKE_POSITION_INDEPENDENT_CODE=ON \
 -DLLVM_ENABLE_PROJECTS="$project_list" \
 -DLLVM_LIT_ARGS="-j $NumJobs" \
--DLLVM_ENABLE_RUNTIMES="$runtime_list" \
 $ExtraConfigureFlags $BuildDir/llvm-project/llvm \
 2>&1 | tee $LogDir/llvm.configure-Phase$Phase-$Flavor.log
 env CC="$c_compiler" CXX="$cxx_compiler" \
@@ -403,7 +400,6 @@ function configure_llvmCore() {
 -DCMAKE_POSITION_INDEPENDENT_CODE=ON \
 -DLLVM_ENABLE_PROJECTS="$project_list" \
 -DLLVM_LIT_ARGS="-j $NumJobs" \
--DLLVM_ENABLE_RUNTIMES="$runtime_list" \
 $ExtraConfigureFlags $BuildDir/llvm-project/llvm \
 2>&1 | tee $LogDir/llvm.configure-Phase$Phase-$Flavor.log
 



___
llvm-branch-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[llvm-branch-commits] [llvm] 69ba522 - [Hexagon] Fix crash with shuffle_vector of v128f16

2022-03-11 Thread Tom Stellard via llvm-branch-commits

Author: Krzysztof Parzyszek
Date: 2022-03-11T12:02:04-08:00
New Revision: 69ba522c58d0cf43097a08087b1b31d6edb46706

URL: 
https://github.com/llvm/llvm-project/commit/69ba522c58d0cf43097a08087b1b31d6edb46706
DIFF: 
https://github.com/llvm/llvm-project/commit/69ba522c58d0cf43097a08087b1b31d6edb46706.diff

LOG: [Hexagon] Fix crash with shuffle_vector of v128f16

(cherry picked from commit 7403c02f06d4c405215aa97452f1af18dfc02dc0)

Added: 
llvm/test/CodeGen/Hexagon/vector-sint-to-fp.ll

Modified: 
llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp

Removed: 




diff  --git a/llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp 
b/llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
index 0ba75a544c048..14b4f7c56c57b 100755
--- a/llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
+++ b/llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
@@ -118,9 +118,10 @@ HexagonTargetLowering::initializeHVXLowering() {
 setOperationAction(ISD::SPLAT_VECTOR,  MVT::v32f32, Legal);
 // Vector shuffle is always promoted to ByteV and a bitcast to f16 is
 // generated.
-setPromoteTo(ISD::VECTOR_SHUFFLE, MVT::v64f16, ByteV);
-setPromoteTo(ISD::VECTOR_SHUFFLE, MVT::v64f32, ByteW);
-setPromoteTo(ISD::VECTOR_SHUFFLE, MVT::v32f32, ByteV);
+setPromoteTo(ISD::VECTOR_SHUFFLE, MVT::v128f16, ByteW);
+setPromoteTo(ISD::VECTOR_SHUFFLE, MVT::v64f16,  ByteV);
+setPromoteTo(ISD::VECTOR_SHUFFLE, MVT::v64f32,  ByteW);
+setPromoteTo(ISD::VECTOR_SHUFFLE, MVT::v32f32,  ByteV);
 
 // Custom-lower BUILD_VECTOR for vector pairs. The standard (target-
 // independent) handling of it would convert it to a load, which is
@@ -780,7 +781,6 @@ HexagonTargetLowering::buildHvxVectorReg(ArrayRef 
Values,
   SDValue N = HalfV0;
   SDValue M = HalfV1;
   for (unsigned i = 0; i != NumWords/2; ++i) {
-
 // Rotate by element count since last insertion.
 if (Words[i] != Words[n] || VecHist[n] <= 1) {
   Sn = DAG.getConstant(Rn, dl, MVT::i32);

diff  --git a/llvm/test/CodeGen/Hexagon/vector-sint-to-fp.ll 
b/llvm/test/CodeGen/Hexagon/vector-sint-to-fp.ll
new file mode 100644
index 0..726ee8f061714
--- /dev/null
+++ b/llvm/test/CodeGen/Hexagon/vector-sint-to-fp.ll
@@ -0,0 +1,51 @@
+; RUN: llc -march=hexagon < %s | FileCheck %s
+
+; Test that code is generated for the vector sint_to_fp node. The compiler
+; asserts with a cannot select message if the node is not expanded. When
+; expanded, the generated code is very inefficient, so iwe need to find a more
+; efficient code sequence to generate.
+
+; CHECK: convert_w2sf
+; CHECK: call floorf
+
+target triple = "hexagon"
+
+define dllexport void @f0() #0 {
+b0:
+  br label %b1
+
+b1:   ; preds = %b1, %b0
+  %v0 = phi i32 [ 0, %b0 ], [ %v17, %b1 ]
+  %v1 = mul nsw i32 %v0, 2
+  %v2 = add nsw i32 undef, %v1
+  %v3 = insertelement <64 x i32> undef, i32 %v2, i32 0
+  %v4 = shufflevector <64 x i32> %v3, <64 x i32> undef, <64 x i32> 
zeroinitializer
+  %v5 = add nsw <64 x i32> %v4, 
+  %v6 = sitofp <64 x i32> %v5 to <64 x float>
+  %v7 = fmul <64 x float> %v6, 
+  %v8 = fsub <64 x float> %v7, zeroinitializer
+  %v9 = call <64 x float> @llvm.floor.v64f32(<64 x float> %v8)
+  %v10 = fsub <64 x float> zeroinitializer, %v9
+  %v11 = fptrunc <64 x float> %v10 to <64 x half>
+  %v12 = call <64 x half> @llvm.fmuladd.v64f16(<64 x half> %v11, <64 x half> 
zeroinitializer, <64 x half> zeroinitializer)
+  %v13 = fsub <64 x half> %v12, zeroinitializer
+  %v14 = call <64 x half> @llvm.fmuladd.v64f16(<64 x half> zeroinitializer, 
<64 x half> %v13, <64 x half> zeroinitializer)
+  %v15 = shufflevector <64 x half> %v14, <64 x half> undef, <128 x i32> 
+  %v16 = shufflevector <128 x half> %v15, <128 x half> undef, <64 x i32> 
+  call void @llvm.masked.store.v64f16.p0v64f16(<64 x half> %v16, <64 x half>* 
undef, i32 64, <64 x i1> )
+  %v17 = add nsw i32 %v0, 1
+  br label %b1
+}
+
+; Function Attrs: nofree nosync nounwind readnone speculatable willreturn
+declare <64 x float> @llvm.floor.v64f32(<64 x float>) #1
+
+; Function Attrs: nofree nosync nounwind readnone speculatable willreturn
+declare <64 x half> @llvm.fmuladd.v64f16(<64 x half>, <64 x half>, <64 x 
half>) #1
+
+; Function Attrs: argmemonly nofree nosync nounwind willreturn writeonly
+declare void @llvm.masked.store.v64f16.p0v64f16(<64 x half>, <64 x half>*, i32 
immarg, <64 x i1>) #2
+
+attributes #0 = { "target-features"="+hvxv69,+hvx-length128b,+hvx-qfloat" }
+attributes #1 = { nofree nosync nounwind readnone speculatable willreturn }
+attributes #2 = { argmemonly nofree nosync nounwind willreturn writeonly }



___
llvm-branch-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits