1. 19 Apr, 2022 4 commits
    • Ruben's avatar
      Backport "Add noOverrideExternalGlobalCflags support to Soong" · 90babb32
      Ruben authored
      Original commit message:
          Add noOverrideExternalGlobalCflags support to Soong
      
          noOverrideExternalGlobalCflags is a new set of flags intended to be
          added at the end of the command line for 3rd party projects like
          external/, hardware/, vendor/, and more. Our previous flags for external
          projects occur way too early on the command line, leading to issues with
          use for suppressing diagnostics. Note that support for this variable in
          build/make is currently unimplemented, as there are no projects that
          would depend on it. It could be added in the future, if it turns out to
          be useful.
      
          This change initially applies `-Wno-unused-but-set-variable` and
          `-Wno-unused-but-set-parameter` to external projects because these
          upstream projects aren't easily fixed, and the risk of actual bugs is
          low.
      
          Bug: http://b/197240255
          Test: Build and check warnings
          Change-Id: I26f56c5c52725dddb70dd8130ad61270eac7a9aa
      Author of the original commit: Stephen Hines <srhines@google.com>
      
      Change-Id: I7e9453bc9bed9303dbadc78a6de125c86065ba1e
      90babb32
    • Yi Kong's avatar
      Backport of "Switch to clang r433403" · 80a81628
      Yi Kong authored
      In the backport, the Wno-null-pointer-subtraction flag is added to
      ClangExtraExternalCflags instead of extraExternalCflags.
      
      Original commit message:
          Switch to clang r433403
      
          Bug: 197230471
          Test: presubmit
          Change-Id: I374a66deb785bae99953ea23c67f873f33c2081b
      Author of the original commit: Yi Kong <yikong@google.com>
      
      Change-Id: Ic83fb77c3e931a3e5eaf2e63c59f68616c4a3047
      80a81628
    • Christopher Di Bella's avatar
      reverses common and external Clang flags · 3bc645c4
      Christopher Di Bella authored
      Flags for external projects are specialisations of the common flags, and
      need to follow the common flags, not precede them.
      
      Bug: 181177782
      Test: None
      
      Change-Id: I19c8c2a3539573e9b2f2d9e3e1c898fa09570663
      3bc645c4
    • Yi Kong's avatar
      Remove unused-but-set-{variable,parameter} from ClangUnknownCflags · 55bd2e4b
      Yi Kong authored
      These warnings are now implemented by Clang.
      
      Change-Id: I78d04216da0ca3d1db616c7b658ca6075b20e7f6
      Test: presubmit
      Bug: 197230471
      55bd2e4b
  2. 08 Mar, 2022 1 commit
    • Ruben's avatar
      Add -mcpu=rainier · 4efb112d
      Ruben authored
      Change-Id: I734e0fe57674d50974a122a4dd357d3b9006e3f9
      4efb112d
  3. 05 Jan, 2022 1 commit
  4. 04 Jan, 2022 1 commit
  5. 11 Dec, 2021 1 commit
    • Yabin Cui's avatar
      Switch to clang-r407598 (12.0.1). · f4d4012d
      Yabin Cui authored
      Also suppress a clang-tidy warning and a ubsan check to pass compilation.
      
      Bug: 171348143
      Test: build.
      Change-Id: Ie5162c15df172cefd7cff9776e54531fd620bc23
      f4d4012d
  6. 11 Oct, 2021 2 commits
    • Ruben's avatar
      Disable CHERI perf warnings for Hybrid-cap build · 4fa05e22
      Ruben authored
      This is a temporary workaround until the toolchain is updated
      to not emit a memory access that subsequently triggers this warning.
      
      Change-Id: Ia5540b663e70749ea14f1fc86b2843932b44e5cd
      4fa05e22
    • Ruben's avatar
      Do not re-export compiler-rt symbols · ca9443e1
      Ruben authored
      This adds missing part of I04b11f5c047e7c557cba5e4095acbf7f3b0757d8
      which added reference to libcompiler_rt without adding
      the respective --exclude-libs option in the list.
      
      Change-Id: I02fa69c30065732d0fd89699452606a8127c1570
      ca9443e1
  7. 29 Sep, 2021 2 commits
    • Ruben's avatar
      Allow bpf to include libarchcap headers · 8954f0d6
      Ruben authored
      This is needed because inttypes.h depends on archcap-defs.h header.
      
      Change-Id: I5b12a3c2d034039bec1c661ca56c8c24ae0d8200
      8954f0d6
    • Ruben's avatar
      Implement HasJava Arch flag · 0742dfaf
      Ruben authored
      The flag is designating whether ART/Java is supported
      for given architecture.
      
      Change-Id: I8b2274f4b3aa48e8457f400552360589d6af5a2a
      0742dfaf
  8. 13 Sep, 2021 15 commits
  9. 28 Jun, 2021 13 commits
    • Tudor Cretu's avatar
      Disable updatable SDKs for architectures with NoNDK. · b254d19f
      Tudor Cretu authored
      Change-Id: I5cb3be78a36e32a202b36f8fc77f36e40e27e19a
      b254d19f
    • Tudor Cretu's avatar
      Disable checkNativeSdkVersion for architectures with NoNDK · 297665ce
      Tudor Cretu authored
      For architectures with NoNDK, objects don't have a NativeSdkVersion
      associated. Therefore, the check is redundant and would fail.
      
      Change-Id: Ia4d27f93208e6ae33ce663280ecbba6e4bdf90b2
      297665ce
    • Tudor Cretu's avatar
      Disable sdkMutator for architectures with NoNDK · dc09809f
      Tudor Cretu authored
      sdkMutator attempts to create an sdk variant of objects for each sdk
      version. For architectures with NoNDK, objects don't have an sdk
      version associated, so the sdkMutator will fail.
      
      Change-Id: I2e1c351cf374ef443e96f68dcb8aabb34f6d30af
      dc09809f
    • Tudor Cretu's avatar
      Remove "ndk" from potential prebuilts warning · 508dc07c
      Tudor Cretu authored
      All the prebuilt modules contain "prebuilt" in the module type name.
      There are modules that contain "ndk" and are not prebuilt.
      
      Change-Id: I71d167b0765b808bc8a6978498a59bfdcc9427f7
      508dc07c
    • Ruben's avatar
      Rename -Wmips-cheri-prototypes* · 4f86fdb3
      Ruben authored
      The -Wmips-cheri-prototypes* were renamed to -Wcheri-prototypes*
      in the toolchain. Update the warning names in the build system.
      
      Android R updates:
      Use flags.Local.CFlags instead of flags.CFlags.
      
      Change-Id: Idab82d40ae8372a3e8e5a90721d3236fcdfe47a6
      4f86fdb3
    • Ruben's avatar
      Use llvm-objcopy unless use-gnu-strip is requested · cf5cf1ba
      Ruben authored
      
      
      Android R updates:
      Option -w is used for one objcopy.
      USED_STRIP_OBJCOPY is not used anymore.
      Co-authored-by: Ruben's avatarRuben Ayrapetyan <ruben.ayrapetyan@arm.com>
      Co-authored-by: Tudor Cretu's avatarTudor Cretu      <tudor.cretu@arm.com>
      
      Change-Id: I371f8a4516bd883edfedaf731d85eaf34e48927e
      cf5cf1ba
    • Tudor Cretu's avatar
      Change LibC64 to Libc64 in apex · dbec2b62
      Tudor Cretu authored
      Android R updates:
      Change applied to `a.properties.Multilib.LibC64.Tests' as well.
      
      Change-Id: I3f7f797faab8f2a89b1fea45a4a045831fa3ae22
      dbec2b62
    • Kevin Brodsky's avatar
      morello: use asm-arm64 instead of asm-morello · 750b272d
      Kevin Brodsky authored
      There is no plan to create a new "morello" architecture in the
      kernel, so switch to asm-arm64 for the morello arch.
      
      Change-Id: I8d3eae4a90bdc21b6bda126005a25c8bebab81a6
      750b272d
    • Tudor Cretu's avatar
      Morello: Disable versioner for Morello · ff43de59
      Tudor Cretu authored
      This change disables the versioner for Morello. This is supposed to
      be a temporary solution. The best solution would be to rebuild the
      versioner from the Morello LLVM. One of the current issues is that
      ptraddr_t is undefined in the versioner and is needed by new libc
      headers included as part of the Morello project.
      
      The versioner modifies the libc headers by looking for defintions
      marked with the '__INTRODUCED_IN(XX)' attribute and adding
      '#if __ANDROID_API__ >= XX' and '#endif /* __ANDROID_API__ >= XX */'
      before and after respectively. Then, it copies the headers to the out
      directory. The substitute command only copies the libc headers from
      the source directory to the out directory.
      
      Test: morello_fvp_nano profile builds succesfully
      
      Change-Id: I4f20d8ab80d43e03c9397dfdcd262f859d164916
      ff43de59
    • Tamás Kaman's avatar
      Backport of "Switch to clang-r399163." · ac6d1e26
      Tamás Kaman authored
      Changes related to the "-Wno-psabi" were skipped as this flag is not
      supported in the current compiler version.
      
      Original commit message:
      "Switch to clang-r399163.
      
      Bug: http://b/155835175
      Bug: http://b/151457797
      Bug: http://b/165945989
      
      
      Test: m with aosp_blueline"
      Original Change-Id: Id2c2932ccbc34fcbb19cd0b4da0d66ea92cc099a
      Signed-off-by: Tamás Kaman's avatarTamas Kaman <tamas.kaman@arm.com>
      Change-Id: If4256da2c8b6b5982bacd2845f1d53de5bfd5275
      ac6d1e26
    • Tamás Kaman's avatar
      Disable -Werror for 'frame-error' compiler warning · 76bf29a8
      Tamás Kaman authored
      Switch off the new -Werror check for a newly introduced compiler
      warning.
      
      This is needed because base for the Morello toolchain is newer
      than the default toolchain used for building Android Q, so it
      implements more source code checks.
      
      Android R update:
      The Morello toolchain is newer than the default toolchain used for
      Android R as well.
      
      Change-Id: Ib85cbdc9574b0fa04670477c9972b70536a6e2e4
      76bf29a8
    • Ruben's avatar
      Switch to C64 and Purecap ABI for morello · 6ed9c220
      Ruben authored
      1. Add compiler flags enabling C64 build: -march=morello+c64, mabi=purecap.
      
      2. Enable -Werror for some of the CHERI warnings
      
       - intcap-arithmetic
       - capability-misuse
      
      3. Disable -Wstack-protector-purecap-ignored since fstack-protector
         is expected to be implicitly disabled for Purecap build.
      
      Change-Id: I45aeb10ea313a66e4586e820d76d00dbb66cfd90
      6ed9c220
    • Ruben's avatar
      Implement HasStableABI Arch flag · 30bdbfa3
      Ruben authored
      
      
      The flag is designating whether given architecture has a stable ABI.
      
      In context of the Morello project, both "arm64" and "morello" are
      providing the Hybrid and Purecap ABI, respectively.
      
      Both Hybrid and Purecap ABIs are not stable and are meant to be evolving
      as part of the Morello project therefore both marked as not stable.
      
      Android R updates:
      newArchExtended has 6 parameters instead of 7.
      Co-authored-by: Ruben's avatarRuben Ayrapetyan <ruben.ayrapetyan@arm.com>
      Co-authored-by: Tudor Cretu's avatarTudor Cretu      <tudor.cretu@arm.com>
      
      Change-Id: Ia4d336772e4d705c72529d4bf02cfae7add1d332
      30bdbfa3