[PATCH 1/2] sparse, llvm: Make 'sparsec' error handling more robust

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Make 'sparsec' more robust against SIGSEGV in Sparse/LLVM code so that 'make
check' detects test breakage.

Cc: Christopher Li <sparse@xxxxxxxxxxx>
Cc: Jeff Garzik <jgarzik@xxxxxxxxxx>
Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
Signed-off-by: Pekka Enberg <penberg@xxxxxxxxxx>
---
 sparsec |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/sparsec b/sparsec
index 1e5c8bd..33e1a2b 100755
--- a/sparsec
+++ b/sparsec
@@ -2,6 +2,8 @@
 #
 # GCC compatible C compiler based on Sparse LLVM
 
+set +e
+
 SPARSEOPTS=""
 DIRNAME=`dirname $0`
 
@@ -27,9 +29,12 @@ while [ $# -gt 0 ]; do
 	shift
 done
 
+TMPLLVM=`mktemp -t tmp.XXXXXX`".llvm"
 TMPFILE=`mktemp -t tmp.XXXXXX`".o"
 
-$DIRNAME/sparse-llvm $SPARSEOPTS | llc | as -o $TMPFILE
+$DIRNAME/sparse-llvm $SPARSEOPTS > $TMPLLVM
+
+llc $TMPLLVM | as -o $TMPFILE
 
 if [ $NEED_LINK -eq 1 ]; then
 	if [ -z $OUTFILE ]; then
@@ -43,3 +48,5 @@ else
 	fi
 	mv $TMPFILE $OUTFILE
 fi
+
+rm -f $TMPLLVM
-- 
1.7.6.4

--
To unsubscribe from this list: send the line "unsubscribe linux-sparse" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Newbies FAQ]     [LKML]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Trinity Fuzzer Tool]

  Powered by Linux