1*3b598b9cSOliver Stannard // RUN: %clang -target x86_64-unknown-linux -fvirtual-function-elimination -### %s 2>&1 | FileCheck --check-prefix=BAD-LTO %s 2*3b598b9cSOliver Stannard // RUN: %clang -target x86_64-unknown-linux -fvirtual-function-elimination -flto=thin -### %s 2>&1 | FileCheck --check-prefix=BAD-LTO %s 3*3b598b9cSOliver Stannard // BAD-LTO: invalid argument '-fvirtual-function-elimination' only allowed with '-flto=full' 4*3b598b9cSOliver Stannard 5*3b598b9cSOliver Stannard // RUN: %clang -target x86_64-unknown-linux -fvirtual-function-elimination -flto -### %s 2>&1 | FileCheck --check-prefix=GOOD %s 6*3b598b9cSOliver Stannard // RUN: %clang -target x86_64-unknown-linux -fvirtual-function-elimination -flto=full -### %s 2>&1 | FileCheck --check-prefix=GOOD %s 7*3b598b9cSOliver Stannard // RUN: %clang -target x86_64-unknown-linux -fvirtual-function-elimination -flto -fwhole-program-vtables -### %s 2>&1 | FileCheck --check-prefix=GOOD %s 8*3b598b9cSOliver Stannard // GOOD: "-fvirtual-function-elimination" "-fwhole-program-vtables" 9*3b598b9cSOliver Stannard 10*3b598b9cSOliver Stannard // RUN: %clang -target x86_64-unknown-linux -fvirtual-function-elimination -fno-whole-program-vtables -flto -### %s 2>&1 | FileCheck --check-prefix=NO-WHOLE-PROGRAM-VTABLES %s 11*3b598b9cSOliver Stannard // NO-WHOLE-PROGRAM-VTABLES: invalid argument '-fno-whole-program-vtables' not allowed with '-fvirtual-function-elimination' 12