Skip to content
Snippets Groups Projects
  1. Sep 21, 2019
    • Dan Albert's avatar
      Fix bug for copying winpthread on Windows. · 6f40a53b
      Dan Albert authored
      This was broken when I changed this API. ld can't be run from the
      arch-specific bin directory because this is missing.
      
      Test: Build, check that winpthread is copied
      Bug: None
      Change-Id: Ia01e88624b0e66edc5563c931bdfbea174d2a131
      8 tags
      6f40a53b
  2. Aug 09, 2019
  3. Jul 03, 2019
    • Tiancong Wang's avatar
      Fix a bug on gold linker. · 71b0f9d8
      Tiancong Wang authored
      Gold linker by default turns on the --fix-arm1176 option. It has
      missing cases for TAG_CPU_ARCH_V8 and various other arm v8
      architectures. The result of this causes gold using v4t stubs for
      arm v8 cpus, which results in measurable code-size and performance
      impact. See https://sourceware.org/bugzilla/show_bug.cgi?id=24642
      for more details on the bug.
      
      This patches extend the condition to be any TAGs larger than v7,
      instead of checking the tag individually. It enables any future
      updates on the tags. All the tag are defined in include/elf/arm.h.
      
      Bug: b/134709902
      Test: ./checkbuild.by passes, after the ../prebuilt/ndk/binutils is updated with newly built binutils.
      
      Change-Id: I66277f62db1b1377b19f0e6d056f3b2d0a6f129b
  4. Jun 13, 2019
    • Dan Albert's avatar
      Remove support for 32-bit Windows. · 5006aa6d
      Dan Albert authored
      Test: ./build.py --arch arm64 --host windows64
      Bug: None
      Exempt-From-Owner-Approval: janitorial
      Change-Id: I4403dd0e1d406b65577a3af0b96b9b4cb95c5c53
      5006aa6d
  5. Jun 04, 2019
  6. Mar 23, 2019
  7. Nov 15, 2018
  8. Oct 09, 2018
    • Pirama Arumuga Nainar's avatar
      Align __CTOR_LIST__ to 4 bytes for windows x86 · 2245cc50
      Pirama Arumuga Nainar authored
      Bug: http://b/117439724
      
      Without specifying alignment, if __CTOR_LIST__ is not aligned to 4
      bytes, we end up with garbage after the -1.  This causes access
      violations in __do_global_ctors.
      
      The 64-bit version aligns it to 8 bytes (ld/scrpittempl/pep.sc).
      
      Test: With this fix, AOSP Windows tools built with Clang + MinGW +
      libc++ no longer crash.
      
      Change-Id: I76be11a265cdcf272d740fa8715024f1f6df3e1b
      19 tags
      2245cc50
  9. Jul 18, 2018
  10. Jul 13, 2018
    • Yunlian Jiang's avatar
      Fix aarch64 --no-apply-dynamic-relocs option. · 49e1641c
      Yunlian Jiang authored
      This option is intended to make gold not apply link-time values for
      absolution relocations which have dynamic relocations emitted for
      them, in order to workaround an android dynamic loader bug in old
      versions of android.
      
      Unfortunately, it also had the side-effect of breaking debug data,
      because the dynamic relocations are not used for non-ALLOC sections,
      but the flag was also suppressing the static relocation.
      
      This fix was proposed by jyknight@ and it fixed the problem by filtering
      out non-ALLOC sections with the --no-apply-dynamic-relocs option.
      
      BUG: 70838247
      TEST: Debug info appears with --no-apply-dynamic-relocs
  11. Jul 12, 2018
  12. Jul 10, 2018
    • Logan Chien's avatar
      Fix dwarf_reader.cc for C++11 · fcb56510
      Logan Chien authored
      This commit replaces `std::make_pair<int, std::string>(dirindex, path)`
      with `std::make_pair(dirindex, path)` because C++11 replaces
      `std::make_pair<T, V>(T t, V v)` with
      `std::make_pair<T, V>(T &&t, V &&v)`.
      
      This commit removes explicit template arguments because forward
      references are only available during template arguments deduction.  If
      the explicit template arguments are specified, the argument `t` and `v`
      will become R-value references, which can not bind to an L-value.
      
      Test: It builds with clang++ (or g++) with CXXFLAGS="-std=c++11"
      Change-Id: I79eb94552445354f7e7bff02169879195c7f6283
  13. Jun 20, 2018
  14. Jun 02, 2018
  15. Jun 01, 2018
  16. Apr 07, 2018
  17. Apr 06, 2018
    • Ryan Prichard's avatar
      Windows: enable gold threading, copy libwinpthread-1.dll · 2485f18b
      Ryan Prichard authored
      Copy libwinpthread-1.dll alongside the binutils executables on Windows.
      
      The install_winpthreads function is copied from llvm_android:
      https://android.googlesource.com/toolchain/llvm_android/+/bd22d9779676661ae9571972dcd744c42c70ffd0/build.py#1063
      
      Most C++ MinGW programs need libpthread, because even libstdc++'s
      "operator new" pulls in EH code, which calls into libpthread. Currently,
      the ld.gold.exe and dwp.exe binaries need libwinpthread-1.dll, which is
      not generally in the PATH, so the binaries don't run.
      
      Previously, the Android GCC build of binutils linked ld.gold.exe and
      dwp.exe with -static, which selected the static libpthread.a. Packaging
      libwinpthread-1.dll alongside the binaries ensures that ld.gold.exe and
      the LLVMgold plugin use the same copy of the winpthreads runtime, which
      might be important.
      
      Test: ./toolchain/binutils/build.py --arch arm64 --host win64
      Test: ./toolchain/binutils/build.py  --arch arm64 --host win
      Test: ./toolchain/binutils/build.py --arch arm64  --host linux
      Test: ./toolchain/binutils/build.py --arch x86 --host win64
      Bug: none
      Change-Id: I5fc2d38b67c72fa4760be1c2688ef88479759160
      6 tags
      2485f18b
  18. Mar 28, 2018
  19. Mar 27, 2018
  20. Mar 16, 2018
  21. Mar 10, 2018
  22. Mar 09, 2018
    • Ryan Prichard's avatar
      Build binutils with --disable-nls · b01e31e3
      Ryan Prichard authored
      The --disable-nls flag is also used to build gdb and gcc for Android.
      Adding it here prevents 428 *.mo files from being added to the next NDK
      release. (AFAICT, the SDK and NDK currently have no *.mo files.) It also
      fixes a sporadic build failure that can happen when binutils needs its
      bundled copy of libintl/gettext (see build 4635300 of ab/aosp-binutils or
      the linked issue).
      
      Test: ./toolchain/binutils/build.py --arch arm --host win
      Test: ./toolchain/binutils/build.py --arch arm --host win64
      Test: ./toolchain/binutils/build.py --arch arm --host linux
      Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=22941
      Change-Id: I0810406dc52f366fac7491676c2d5cb000fcfcaa
      b01e31e3
  23. Feb 28, 2018
Loading