r347897 - set default max-page-size to 4KB in lld for Android Aarch64

2018-11-29 Thread Zhizhou Yang via cfe-commits
Author: zhizhouy
Date: Thu Nov 29 10:52:22 2018
New Revision: 347897

URL: http://llvm.org/viewvc/llvm-project?rev=347897=rev
Log:
set default max-page-size to 4KB in lld for Android Aarch64

Summary:
This patch passes an option '-z max-page-size=4096' to lld through clang driver.

This is for Android on Aarch64 target.

The lld default page size is too large for Aarch64, which produces larger .so 
files and images for arm64 device targets.
In this patch we set default page size to 4KB for Android Aarch64 targets 
instead.

Reviewers: srhines, danalbert, ruiu, chh, peter.smith

Reviewed By: srhines

Subscribers: javed.absar, kristof.beyls, cfe-commits, george.burgess.iv, llozano

Differential Revision: https://reviews.llvm.org/D55029

Modified:
cfe/trunk/lib/Driver/ToolChains/Linux.cpp
cfe/trunk/test/Driver/android-aarch64-link.cpp

Modified: cfe/trunk/lib/Driver/ToolChains/Linux.cpp
URL: 
http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/ToolChains/Linux.cpp?rev=347897=347896=347897=diff
==
--- cfe/trunk/lib/Driver/ToolChains/Linux.cpp (original)
+++ cfe/trunk/lib/Driver/ToolChains/Linux.cpp Thu Nov 29 10:52:22 2018
@@ -247,6 +247,14 @@ Linux::Linux(const Driver , const llvm
 ExtraOpts.push_back("relro");
   }
 
+  // The lld default page size is too large for Aarch64, which produces much
+  // larger .so files and images for arm64 device targets. Use 4KB page size
+  // for Android arm64 targets instead.
+  if (Triple.isAArch64() && Triple.isAndroid()) {
+ExtraOpts.push_back("-z");
+ExtraOpts.push_back("max-page-size=4096");
+  }
+
   if (GCCInstallation.getParentLibPath().find("opt/rh/devtoolset") !=
   StringRef::npos)
 // With devtoolset on RHEL, we want to add a bin directory that is relative

Modified: cfe/trunk/test/Driver/android-aarch64-link.cpp
URL: 
http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/android-aarch64-link.cpp?rev=347897=347896=347897=diff
==
--- cfe/trunk/test/Driver/android-aarch64-link.cpp (original)
+++ cfe/trunk/test/Driver/android-aarch64-link.cpp Thu Nov 29 10:52:22 2018
@@ -12,6 +12,11 @@
 // RUN:   -mcpu=cortex-a57 -### -v %s 2> %t
 // RUN: FileCheck -check-prefix=CORTEX-A57 < %t %s
 //
+// RUN: %clang -target aarch64-none-linux-android \
+// RUN:   -### -v %s 2> %t
+// RUN: FileCheck -check-prefix=MAX-PAGE-SIZE < %t %s
+//
 // GENERIC-ARM: --fix-cortex-a53-843419
 // CORTEX-A53: --fix-cortex-a53-843419
 // CORTEX-A57-NOT: --fix-cortex-a53-843419
+// MAX-PAGE-SIZE: max-page-size=4096


___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


Re: [PATCH] D30760: Record command lines in objects built by clang, Clang part

2017-03-29 Thread Zhizhou Yang via cfe-commits
Not really.

Would you please help me commit it? Also there is another diff for LLVM
part of this bug.

Thanks.

On Wed, Mar 29, 2017 at 1:16 PM, Eric Christopher via Phabricator <
revi...@reviews.llvm.org> wrote:

> echristo accepted this revision.
> echristo added a comment.
> This revision is now accepted and ready to land.
>
> Sounds good. Do you have commit access?
>
>
> https://reviews.llvm.org/D30760
>
>
>
>
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


Re: [PATCH] D30760: Record command lines in objects built by clang, Clang part

2017-03-24 Thread Zhizhou Yang via cfe-commits
Sure I can add some more tests here.

For -grecord-gcc-switches itself, I think maybe we could keep it in
recording, since it is also one of the options from command line?

On Fri, Mar 24, 2017 at 2:54 PM, Eric Christopher via Phabricator <
revi...@reviews.llvm.org> wrote:

> echristo added inline comments.
>
>
> 
> Comment at: test/Driver/debug-options.c:201-202
>  //
> +// GRECORD: "-dwarf-debug-flags"
> +// GRECORD: -### -c -grecord-gcc-switches
> +//
> 
> This seems a little light on the testing, would you mind adding some more
> interesting lines here? (Also, -grecord-gcc-switches seems like an option
> we might want to ignore for this?)
>
>
> https://reviews.llvm.org/D30760
>
>
>
>
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits