Skip to content
Snippets Groups Projects
Commit 3de93c88 authored by David Blaikie's avatar David Blaikie
Browse files

FileCheck-ize test/CodeGen/inline.c.

A rather egregious example of the grep-style checking of old that I randomly
came across.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171631 91177308-0d34-0410-b5e6-96231b3b80d8
parent d826f11d
No related branches found
No related tags found
No related merge requests found
// RUN: echo "GNU89 tests:" // RUN: echo "GNU89 tests:"
// RUN: %clang %s -target i386-unknown-unknown -O1 -emit-llvm -S -o %t -std=gnu89 // RUN: %clang %s -target i386-unknown-unknown -O1 -emit-llvm -S -o - -std=gnu89 | FileCheck %s --check-prefix=CHECK1
// RUN: grep "define available_externally i32 @ei()" %t // CHECK1: define i32 @foo()
// RUN: grep "define i32 @foo()" %t // CHECK1: define i32 @bar()
// RUN: grep "define i32 @bar()" %t // CHECK1: define void @unreferenced1()
// RUN: grep "define void @unreferenced1()" %t // CHECK1-NOT: unreferenced2
// RUN: not grep unreferenced2 %t // CHECK1: define void @gnu_inline()
// RUN: grep "define void @gnu_inline()" %t // CHECK1: define i32 @test1
// RUN: grep "define available_externally void @gnu_ei_inline()" %t // CHECK1: define i32 @test2
// RUN: grep "define i32 @test1" %t // CHECK1: define void @test3()
// RUN: grep "define i32 @test2" %t // CHECK1: define available_externally i32 @test4
// RUN: grep "define void @test3()" %t // CHECK1: define available_externally i32 @test5
// RUN: grep "define available_externally i32 @test4" %t // CHECK1: define i32 @test6
// RUN: grep "define available_externally i32 @test5" %t // CHECK1: define void @test7
// RUN: grep "define i32 @test6" %t // CHECK1: define i{{..}} @strlcpy
// RUN: grep "define void @test7" %t // CHECK1-NOT: test9
// RUN: grep "define i.. @strlcpy" %t // CHECK1: define void @testA
// RUN: not grep test9 %t // CHECK1: define void @testB
// RUN: grep "define void @testA" %t // CHECK1: define void @testC
// RUN: grep "define void @testB" %t // CHECK1: define available_externally void @gnu_ei_inline()
// RUN: grep "define void @testC" %t // CHECK1: define available_externally i32 @ei()
// RUN: echo "C99 tests:" // RUN: echo "C99 tests:"
// RUN: %clang %s -target i386-unknown-unknown -O1 -emit-llvm -S -o %t -std=gnu99 // RUN: %clang %s -target i386-unknown-unknown -O1 -emit-llvm -S -o - -std=gnu99 | FileCheck %s --check-prefix=CHECK2
// RUN: grep "define i32 @ei()" %t // CHECK2: define i32 @ei()
// RUN: grep "define available_externally i32 @foo()" %t // CHECK2: define i32 @bar()
// RUN: grep "define i32 @bar()" %t // CHECK2-NOT: unreferenced1
// RUN: not grep unreferenced1 %t // CHECK2: define void @unreferenced2()
// RUN: grep "define void @unreferenced2()" %t // CHECK2: define void @gnu_inline()
// RUN: grep "define void @gnu_inline()" %t // CHECK2: define i32 @test1
// RUN: grep "define available_externally void @gnu_ei_inline()" %t // CHECK2: define i32 @test2
// RUN: grep "define i32 @test1" %t // CHECK2: define void @test3
// RUN: grep "define i32 @test2" %t // CHECK2: define available_externally i32 @test4
// RUN: grep "define void @test3" %t // CHECK2: define available_externally i32 @test5
// RUN: grep "define available_externally i32 @test4" %t // CHECK2: define i32 @test6
// RUN: grep "define available_externally i32 @test5" %t // CHECK2: define void @test7
// RUN: grep "define i32 @test6" %t // CHECK2: define available_externally i{{..}} @strlcpy
// RUN: grep "define void @test7" %t // CHECK2: define void @test9
// RUN: grep "define available_externally i.. @strlcpy" %t // CHECK2: define void @testA
// RUN: grep "define void @test9" %t // CHECK2: define void @testB
// RUN: grep "define void @testA" %t // CHECK2: define void @testC
// RUN: grep "define void @testB" %t // CHECK2: define available_externally void @gnu_ei_inline()
// RUN: grep "define void @testC" %t // CHECK2: define available_externally i32 @foo()
// RUN: echo "C++ tests:" // RUN: echo "C++ tests:"
// RUN: %clang -x c++ %s -target i386-unknown-unknown -O1 -emit-llvm -S -o %t -std=c++98 // RUN: %clang -x c++ %s -target i386-unknown-unknown -O1 -emit-llvm -S -o - -std=c++98 | FileCheck %s --check-prefix=CHECK3
// RUN: grep "define linkonce_odr i32 @_Z2eiv()" %t // CHECK3: define i32 @_Z3barv()
// RUN: grep "define linkonce_odr i32 @_Z3foov()" %t // CHECK3: define linkonce_odr i32 @_Z3foov()
// RUN: grep "define i32 @_Z3barv()" %t // CHECK3-NOT: unreferenced
// RUN: not grep unreferenced %t // CHECK3: define void @_Z10gnu_inlinev()
// RUN: grep "define void @_Z10gnu_inlinev()" %t // CHECK3: define available_externally void @_Z13gnu_ei_inlinev()
// RUN: grep "define available_externally void @_Z13gnu_ei_inlinev()" %t // CHECK3: define linkonce_odr i32 @_Z2eiv()
extern __inline int ei() { return 123; } extern __inline int ei() { return 123; }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment