xref: /aosp_15_r20/external/compiler-rt/test/builtins/timing/time (revision 7c3d14c8b49c529e04be81a3ce6f5cc23712e4c6)
1*7c3d14c8STreehugger Robot#!/bin/sh
2*7c3d14c8STreehugger Robot
3*7c3d14c8STreehugger Robotfunction test () {
4*7c3d14c8STreehugger Robot    arch=$1
5*7c3d14c8STreehugger Robot    file=$2
6*7c3d14c8STreehugger Robot    name=$3
7*7c3d14c8STreehugger Robot    ldflags=$4
8*7c3d14c8STreehugger Robot
9*7c3d14c8STreehugger Robot    if gcc -arch $arch -Os $file $ldflags -DLIBNAME=$name
10*7c3d14c8STreehugger Robot    then
11*7c3d14c8STreehugger Robot	if ./a.out
12*7c3d14c8STreehugger Robot	then
13*7c3d14c8STreehugger Robot	    rm ./a.out
14*7c3d14c8STreehugger Robot	else
15*7c3d14c8STreehugger Robot	    echo "fail"
16*7c3d14c8STreehugger Robot	fi
17*7c3d14c8STreehugger Robot    else
18*7c3d14c8STreehugger Robot	echo "$FILE failed to compile"
19*7c3d14c8STreehugger Robot    fi
20*7c3d14c8STreehugger Robot}
21*7c3d14c8STreehugger Robot
22*7c3d14c8STreehugger RobotINSTALLED=/usr/local/lib/system/libcompiler_rt.a
23*7c3d14c8STreehugger Robot
24*7c3d14c8STreehugger Robotfor ARCH in i386 x86_64; do
25*7c3d14c8STreehugger Robot	for FILE in $(ls *.c); do
26*7c3d14c8STreehugger Robot
27*7c3d14c8STreehugger Robot		echo "Timing $FILE for $ARCH"
28*7c3d14c8STreehugger Robot
29*7c3d14c8STreehugger Robot		test $ARCH $FILE libgcc ""
30*7c3d14c8STreehugger Robot                test $ARCH $FILE tuned ../../darwin_fat/Release/libcompiler_rt.a
31*7c3d14c8STreehugger Robot                if [ -f "$INSTALLED" ]; then
32*7c3d14c8STreehugger Robot                    test $ARCH $FILE installed $INSTALLED
33*7c3d14c8STreehugger Robot		fi
34*7c3d14c8STreehugger Robot
35*7c3d14c8STreehugger Robot		echo " "
36*7c3d14c8STreehugger Robot
37*7c3d14c8STreehugger Robot	done
38*7c3d14c8STreehugger Robotdone
39*7c3d14c8STreehugger Robotexit
40