58 lines · c
1// RUN: %clang -fno-stack-protector -### %s 2>&1 | FileCheck %s -check-prefix=NOSSP2// NOSSP-NOT: "-stack-protector"3// NOSSP-NOT: "-stack-protector-buffer-size" 4 5// RUN: %clang -target i386-unknown-linux -fstack-protector -### %s 2>&1 | FileCheck %s -check-prefix=SSP6// SSP: "-stack-protector" "1"7// SSP-NOT: "-stack-protector-buffer-size" 8 9// RUN: %clang -target i386-unknown-linux -fstack-protector --param ssp-buffer-size=16 -### %s 2>&1 | FileCheck %s -check-prefix=SSP-BUF10// SSP-BUF: "-stack-protector" "1"11// SSP-BUF: "-stack-protector-buffer-size" "16" 12 13// RUN: %clang -target i386-pc-openbsd -### %s 2>&1 | FileCheck %s -check-prefix=OPENBSD14// OPENBSD: "-stack-protector" "2"15 16// RUN: %clang -target i386-pc-openbsd -fstack-protector -### %s 2>&1 | FileCheck %s -check-prefix=OPENBSD_SPS17// OPENBSD_SPS: "-stack-protector" "2"18 19// RUN: %clang -fstack-protector-strong -### %s 2>&1 | FileCheck %s -check-prefix=SSP-STRONG20// SSP-STRONG: "-stack-protector" "2"21// SSP-STRONG-NOT: "-stack-protector-buffer-size" 22 23// RUN: %clang -fstack-protector-all -### %s 2>&1 | FileCheck %s -check-prefix=SSP-ALL24// SSP-ALL: "-stack-protector" "3"25// SSP-ALL-NOT: "-stack-protector-buffer-size" 26 27// RUN: %clang -target x86_64-scei-ps4 -### %s 2>&1 | FileCheck %s -check-prefix=SSP-PS428// RUN: %clang -target x86_64-scei-ps4 -fstack-protector -### %s 2>&1 | FileCheck %s -check-prefix=SSP-PS429// SSP-PS4: "-stack-protector" "2"30// SSP-PS4-NOT: "-stack-protector-buffer-size"31 32// RUN: %clang -target x86_64-scei-ps4 -fstack-protector --param ssp-buffer-size=16 -### %s 2>&1 | FileCheck %s -check-prefix=SSP-PS4-BUF33// SSP-PS4-BUF: "-stack-protector" "2"34// SSP-PS4-BUF: "-stack-protector-buffer-size" "16"35 36// Test default stack protector values for Darwin platforms37 38// RUN: %clang -target armv7k-apple-watchos2.0 -### %s 2>&1 | FileCheck %s -check-prefix=SSP_WATCHOS39// RUN: %clang -ffreestanding -target armv7k-apple-watchos2.0 -### %s 2>&1 | FileCheck %s -check-prefix=SSP_WATCHOS40// SSP_WATCHOS: "-stack-protector" "1"41// RUN: %clang -target x86_64-apple-driverkit19.0 -### %s 2>&1 | FileCheck %s -check-prefix=SSP_DRIVERKIT42// SSP_DRIVERKIT: "-stack-protector" "1"43// RUN: %clang -target arm64-apple-ios8.0.0 -### %s 2>&1 | FileCheck %s -check-prefix=SSP_IOS44// RUN: %clang -ffreestanding -target arm64-apple-ios8.0.0 -### %s 2>&1 | FileCheck %s -check-prefix=SSP_IOS45// SSP_IOS: "-stack-protector" "1"46// RUN: %clang -target x86_64-apple-darwin10 -mmacos-version-min=10.6 -### %s 2>&1 | FileCheck %s -check-prefix=SSP_MACOSX47// RUN: %clang -ffreestanding -target x86_64-apple-darwin10 -mmacos-version-min=10.6 -### %s 2>&1 | FileCheck %s -check-prefix=SSP_MACOSX48// SSP_MACOSX: "-stack-protector" "1"49// RUN: %clang -target x86_64-apple-darwin10 -mmacos-version-min=10.5 -### %s 2>&1 | FileCheck %s -check-prefix=SSP_MACOSX_10_550// RUN: %clang -ffreestanding -target x86_64-apple-darwin10 -mmacos-version-min=10.5 -### %s 2>&1 | FileCheck %s -check-prefix=SSP_MACOSX_10_551// SSP_MACOSX_10_5: "-stack-protector" "1"52// RUN: %clang -target x86_64-apple-darwin10 -mmacos-version-min=10.5 -mkernel -### %s 2>&1 | FileCheck %s -check-prefix=SSP_MACOSX_KERNEL53// SSP_MACOSX_KERNEL-NOT: "-stack-protector"54// RUN: %clang -target x86_64-apple-darwin10 -mmacos-version-min=10.6 -### %s 2>&1 | FileCheck %s -check-prefix=SSP_MACOSX_10_6_KERNEL55// RUN: %clang -ffreestanding -target x86_64-apple-darwin10 -mmacos-version-min=10.6 -### %s 2>&1 | FileCheck %s -check-prefix=SSP_MACOSX_10_6_KERNEL56// SSP_MACOSX_10_6_KERNEL: "-stack-protector" "1"57 58