From: David Majnemer Date: Fri, 25 Jul 2014 17:30:10 +0000 (+0000) Subject: clang-cl: Add support for /Zp X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=104fb54dfa7d979fb3bcedb3ddbfc0de0cae641d;p=platform%2Fupstream%2Fllvm.git clang-cl: Add support for /Zp CL's /Zp flag is analogous to GCC's -fpack-struct, it controls the default maximum alignment of records. Differential Revision: http://reviews.llvm.org/D4671 llvm-svn: 213958 --- diff --git a/clang/include/clang/Driver/CLCompatOptions.td b/clang/include/clang/Driver/CLCompatOptions.td index 7278bf8..3883b4d 100644 --- a/clang/include/clang/Driver/CLCompatOptions.td +++ b/clang/include/clang/Driver/CLCompatOptions.td @@ -132,6 +132,12 @@ def _SLASH_vd : CLJoined<"vd">, HelpText<"Control vtordisp placement">, def _SLASH_Z7 : CLFlag<"Z7">, Alias; def _SLASH_Zi : CLFlag<"Zi">, HelpText<"Enable debug information">, Alias; +def _SLASH_Zp : CLJoined<"Zp">, + HelpText<"Specify the default maximum struct packing alignment">, + Alias; +def _SLASH_Zp_flag : CLFlag<"Zp">, + HelpText<"Set the default maximum struct packing alignment to 1">, + Alias, AliasArgs<["1"]>; def _SLASH_Zs : CLFlag<"Zs">, HelpText<"Syntax-check only">, Alias; @@ -274,5 +280,4 @@ def _SLASH_Ze : CLFlag<"Ze">; def _SLASH_Zg : CLFlag<"Zg">; def _SLASH_ZI : CLFlag<"ZI">; def _SLASH_Zl : CLFlag<"Zl">; -def _SLASH_Zp : CLJoined<"Zp">; def _SLASH_ZW : CLJoined<"ZW">; diff --git a/clang/test/Driver/cl-options.c b/clang/test/Driver/cl-options.c index 26cd7e9..4494ca7 100644 --- a/clang/test/Driver/cl-options.c +++ b/clang/test/Driver/cl-options.c @@ -135,6 +135,12 @@ // RUN: %clang_cl /w -### -- %s 2>&1 | FileCheck -check-prefix=w %s // w: -w +// RUN: %clang_cl /Zp -### -- %s 2>&1 | FileCheck -check-prefix=ZP %s +// ZP: -fpack-struct=1 + +// RUN: %clang_cl /Zp2 -### -- %s 2>&1 | FileCheck -check-prefix=ZP2 %s +// ZP2: -fpack-struct=2 + // RUN: %clang_cl /Zs -### -- %s 2>&1 | FileCheck -check-prefix=Zs %s // Zs: -fsyntax-only @@ -278,8 +284,6 @@ // RUN: /Zi \ // RUN: /ZI \ // RUN: /Zl \ -// RUN: /Zp \ -// RUN: /Zp1 \ // RUN: /ZW:nostdlib \ // RUN: -- %s 2>&1