rust/src/etc/gen-intrinsics

28 lines
819 B
Plaintext
Raw Normal View History

2011-10-14 11:31:40 -07:00
#!/bin/sh
# This script generates new definitions for the intrinsics using
# clang. This is not currently in the Makefile to avoid any dependency
# on clang.
for ARCH in i386 x86_64
do
2011-11-08 15:38:56 -08:00
if [ $ARCH = "i386" ]
then
BITS=32
else
BITS=64
fi
clang++ -emit-llvm -S -m$BITS -O3 -Isrc/rt/isaac -Isrc/rt/uthash \
-Isrc/rt/arch/$ARCH -Isrc/rt -fno-stack-protector \
2011-10-14 11:31:40 -07:00
-o src/rt/intrinsics/intrinsics.$ARCH.ll.in \
src/rt/intrinsics/intrinsics.cpp
2011-12-05 15:12:36 -08:00
sed -i .orig \
2011-10-14 11:31:40 -07:00
-e 's/^target datalayout =/; target datalayout =/' \
src/rt/intrinsics/intrinsics.$ARCH.ll.in
2011-12-05 15:12:36 -08:00
sed -i .orig \
2011-10-14 11:31:40 -07:00
-e 's/^target triple = "[^"]*"/target triple = "@CFG_TARGET_TRIPLE@"/' \
src/rt/intrinsics/intrinsics.$ARCH.ll.in
2011-12-05 15:12:36 -08:00
rm src/rt/intrinsics/intrinsics.$ARCH.ll.in.orig
done