summaryrefslogtreecommitdiffstats
path: root/utils/VtableTest
diff options
context:
space:
mode:
authorMike Stump <mrs@apple.com>2010-01-07 22:28:10 +0000
committerMike Stump <mrs@apple.com>2010-01-07 22:28:10 +0000
commitb5ed0f64fae177034a53c58d9158594e7464cf7b (patch)
treec8055cd9111f40ef03a6700c54a4f1076ed2d1aa /utils/VtableTest
parent3539f110dd838cd618c31318c8b373f36c1de5c6 (diff)
Add checked for VTTs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92954 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/VtableTest')
-rwxr-xr-xutils/VtableTest/check-ztt20
1 files changed, 20 insertions, 0 deletions
diff --git a/utils/VtableTest/check-ztt b/utils/VtableTest/check-ztt
new file mode 100755
index 0000000000..974bcd8346
--- /dev/null
+++ b/utils/VtableTest/check-ztt
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+N_STRUCTS=300
+
+# Utility routine to "hand" check VTTs.
+
+let i=0;
+while [ $i != $N_STRUCTS ]; do
+ sed -n "/^__ZTT.*s$i:/,/\.[sg][el]/p" test-clang.s |
+ grep -v '\.[sg][el]' | sed 's/(\([0-9][0-9]*\))/\1/' >test-clang-ztt
+ sed -n "/^__ZTT.*s$i:/,/\.[sg][el]/p" test-gcc.s |
+ grep -v '\.[sg][el]' | sed 's/(\([0-9][0-9]*\))/\1/' >test-gcc-ztt
+ diff -U3 test-gcc-ztt test-clang-ztt
+ if [ $? != 0 ]; then
+ echo "FAIL: s$i VTT"
+ else
+ echo "PASS: s$i VTT"
+ fi
+ let i=i+1
+done