diff options
author | Marcin Koscielnicki <koriakin@0x04.net> | 2016-05-05 11:35:51 +0000 |
---|---|---|
committer | Marcin Koscielnicki <koriakin@0x04.net> | 2016-05-05 11:35:51 +0000 |
commit | 0275fac2c931bfb4f2a0c421a64c0aeb5a9d445c (patch) | |
tree | 7e8c203731d95f0e2c209b0cfbfc37163dc4adec /llvm/test | |
parent | 0360c0f63d9fd9f3a7cd24062cc180118a0bd5ae (diff) | |
download | bcm5719-llvm-0275fac2c931bfb4f2a0c421a64c0aeb5a9d445c.tar.gz bcm5719-llvm-0275fac2c931bfb4f2a0c421a64c0aeb5a9d445c.zip |
[X86] Extend some Linux special cases to cover kFreeBSD.
Both Linux and kFreeBSD use glibc, so follow similiar code paths.
Add isTargetGlibc to check for this, and use it instead of isTargetLinux
in a few places.
Fixes PR22248 for kFreeBSD.
Differential Revision: http://reviews.llvm.org/D19104
llvm-svn: 268624
Diffstat (limited to 'llvm/test')
-rw-r--r-- | llvm/test/CodeGen/X86/stack-align2.ll | 5 | ||||
-rw-r--r-- | llvm/test/CodeGen/X86/stack-protector-target.ll | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/X86/stack-align2.ll b/llvm/test/CodeGen/X86/stack-align2.ll index 18cce7266d1..7239198000c 100644 --- a/llvm/test/CodeGen/X86/stack-align2.ll +++ b/llvm/test/CodeGen/X86/stack-align2.ll @@ -1,7 +1,9 @@ ; RUN: llc < %s -mcpu=generic -mtriple=i386-linux | FileCheck %s -check-prefix=LINUX-I386 +; RUN: llc < %s -mcpu=generic -mtriple=i386-kfreebsd | FileCheck %s -check-prefix=KFREEBSD-I386 ; RUN: llc < %s -mcpu=generic -mtriple=i386-netbsd | FileCheck %s -check-prefix=NETBSD-I386 ; RUN: llc < %s -mcpu=generic -mtriple=i686-apple-darwin8 | FileCheck %s -check-prefix=DARWIN-I386 ; RUN: llc < %s -mcpu=generic -mtriple=x86_64-linux | FileCheck %s -check-prefix=LINUX-X86_64 +; RUN: llc < %s -mcpu=generic -mtriple=x86_64-kfreebsd | FileCheck %s -check-prefix=KFREEBSD-X86_64 ; RUN: llc < %s -mcpu=generic -mtriple=x86_64-netbsd | FileCheck %s -check-prefix=NETBSD-X86_64 ; RUN: llc < %s -mcpu=generic -mtriple=x86_64-apple-darwin8 | FileCheck %s -check-prefix=DARWIN-X86_64 @@ -11,6 +13,7 @@ entry: ret i32 0 ; LINUX-I386: subl $12, %esp +; KFREEBSD-I386: subl $12, %esp ; DARWIN-I386: subl $12, %esp ; NETBSD-I386-NOT: subl {{.*}}, %esp @@ -20,6 +23,8 @@ entry: ; DARWIN-X86_64-NOT: subq {{.*}}, %rsp ; NETBSD-X86_64: pushq %{{.*}} ; NETBSD-X86_64-NOT: subq {{.*}}, %rsp +; KFREEBSD-X86_64: pushq %{{.*}} +; KFREEBSD-X86_64-NOT: subq {{.*}}, %rsp } declare void @test2() diff --git a/llvm/test/CodeGen/X86/stack-protector-target.ll b/llvm/test/CodeGen/X86/stack-protector-target.ll index 3f69bfd7e7b..66e45055b2b 100644 --- a/llvm/test/CodeGen/X86/stack-protector-target.ll +++ b/llvm/test/CodeGen/X86/stack-protector-target.ll @@ -3,6 +3,8 @@ ; RUN: llc -mtriple=x86_64-linux < %s -o - | FileCheck --check-prefix=LINUX-X64 %s ; RUN: llc -mtriple=i386-linux-android < %s -o - | FileCheck --check-prefix=LINUX-I386 %s ; RUN: llc -mtriple=x86_64-linux-android < %s -o - | FileCheck --check-prefix=LINUX-X64 %s +; RUN: llc -mtriple=i386-kfreebsd < %s -o - | FileCheck --check-prefix=LINUX-I386 %s +; RUN: llc -mtriple=x86_64-kfreebsd < %s -o - | FileCheck --check-prefix=LINUX-X64 %s define void @_Z1fv() sspreq { entry: |