Commit graph

390 commits

Author SHA1 Message Date
Steven Moreland
c8a5d7c7df Merge "Linker: no demangle." into main 2023-07-27 18:19:09 +00:00
Steven Moreland
8fe37e44b5 Linker: no demangle.
You can c++filt, but you can't c++unfilt.

By having the linker provide the exact name of symbols
that are used, we can much more easily resolve missing
symbols in version script files. For instance, I spent
2 hours today working around not having this... :(

After a while, you get used to it. I don't even see the
code.

Bug: 206145174
Test: hide all symbols from a library and see beautiful
  and lossless raw symbols.
Change-Id: Ie0730cd503358bf2d383a56be902f7aeef1eea01
2023-07-25 23:13:36 +00:00
Fabián Cañas
3875e1c582 Merge "Make clang debug level configurable" into main 2023-07-12 17:58:33 +00:00
Fabián Cañas
bc10544dec Make clang debug level configurable
The -g flag is controllable with CLANG_DEFAULT_DEBUG_LEVEL from -g0 to
-g3. The default remains -g

Test: Build with CLANG_DEFAULT_DEBUG_LEVEL=debug_level_1

Change-Id: I913d3a0cb028484f9496a7e0a2298852f9b699cd
2023-07-10 20:49:22 +00:00
AdityaK
423e4ce9e3 gsimple-template-names
Based on: https://chromium-review.googlesource.com/c/chromium/src/+/3988987

```
Savings are almost 330M on 11G

du -s out.diff/target/product/vsoc_arm64/symbols
10751692        out.diff/target/product/vsoc_arm64/symbols
du -s out/target/product/vsoc_arm64/symbols
11086508        out/target/product/vsoc_arm64/symbols
```

Change-Id: I49a5c4cadc77cb0d97e680e95c4efa7156a42f13
2023-07-10 17:36:22 +00:00
Yabin Cui
f67bc44848 Merge "Update clang version to clang-r498229" into main 2023-07-06 23:54:42 +00:00
Yabin Cui
294f839606 Update clang version to clang-r498229
Bug: 280683256
Test: presubmit
Change-Id: Idd0e171f11e0a7f44c64744744505ddeaca6f2fd
2023-06-22 17:29:55 +00:00
Alix
e266787aed bp2build conversion for rscript srcs in cc modules
Bazel does not support using .rscrip/.fs files as cc srcs.
For a module foo with foo srcs, Bp2build will create a bazel
target of rule class rscript_to_cpp with name foo_renderscript
which will have only the renderscript files as srcs.
Bp2build will also create a target foo with the expected cc rule class.
The foo target will have all other src files as srcs and will also
have the target foo_renderscript as another src.

Bug: 210509914
Test: bp2build testing & b build target rstest-latency
Change-Id: Ifdc55051a3595f5fcf54eab8b59e11e9351e141c
2023-06-21 14:58:10 +00:00
Elliott Hughes
fb294e39bf Bump the platform default up to C17.
This is already the "default default" for gcc and clang.

Bug: http://b/232413369
Test: treehugger
Change-Id: I3c0df7c63e8fca1b7692ad867d349a645559c209
2023-06-14 10:42:45 -07:00
Treehugger Robot
9e5c391c85 Merge "export WarningAllowedProjects to bazel" 2023-05-18 04:04:40 +00:00
Pirama Arumuga Nainar
7e80f945d3 Merge "[cc] Remove deprecated clang flag for auto-var-init" 2023-05-17 04:17:04 +00:00
Yi Kong
e9850f8153 Revert "Turn off stack protector check for noreturn calls"
clang-r487747c contains upstream fix for the excessive stack protactor
checks (fc4494dffa54) and checks are no longer inserted for C only code
or C++ code built without exeception. The Android platform does not
enable C++ exception by default, thus turning on the check should not
have significant performance impact.

This reverts commit ecc18df6ff.

Test: presubmit
Bug: 277565884
Bug: 279955553

Change-Id: I2fc5826048ba5d00cabcc8401ac40a6f54812a44
2023-05-12 12:24:22 +01:00
Pirama Arumuga Nainar
4026558dc7 [cc] Remove deprecated clang flag for auto-var-init
Bug: http://b/259559364
Bug: http://b/267819531

The extra flag is no longer needed by the scan-deps used by RBE.

Test: `USE_RBE m`
Change-Id: Ia35b78f7b28f9008479256d9fead253910627254
2023-05-11 00:01:25 +00:00
Yi Kong
1c22301735 Update clang version to clang-r487747c
Test: presubmit
Bug: 279955553
Change-Id: Ibe3b5e81f7850560b340c89a1f83d5ebdf4fc25f
2023-05-10 17:24:44 +09:00
Sam Delmerico
036afabcfb export WarningAllowedProjects to bazel
Bug: 187088227
Test: b test
Change-Id: I668f2c3e834fd03ad2b6d01f07f79ec84dea54eb
2023-05-04 16:43:36 -04:00
Sam Delmerico
162fb00eb3 Merge "Revert "Respect Clang version override env vars."" 2023-05-01 20:23:16 +00:00
Yi Kong
c57e3a8397 Update clang version to clang-r487747b
Test: presubmit
Change-Id: I98de36a9f301dee14c21d42e20901eb5aa157164
2023-04-26 15:11:43 +09:00
Sam Delmerico
3eda019e04 Revert "Respect Clang version override env vars."
Revert submission 2478283-master-I3cf18e7814ff52d526017e4fe34b17ab3d8f1080

Reason for revert: implementing a different way

Reverted changes: /q/submissionid:2478283-master-I3cf18e7814ff52d526017e4fe34b17ab3d8f1080

Change-Id: I1d690b6d322adc664e4c02d958f0183bbb78e669
2023-04-14 18:07:25 +00:00
Trevor Radcliffe
a772d6588d Extract out Visibility flags
Bug: 261733820
Test: Unit tests
Change-Id: Ief4ca3b34de6df9a613e94fd31b447a7bb1f04f8
2023-04-11 13:41:17 +00:00
Yi Kong
ecc18df6ff Turn off stack protector check for noreturn calls
This feature has a substantial impact on RSS memory usage (>2% in many processes). Turn this off for now.

Test: RSS memory benchmark
Bug: 277565884
Bug: 277083500
Change-Id: I2fc5826048ba5d00cabcc8401ac40a6f54812a43
2023-04-10 11:57:19 +00:00
zijunzhao
2a08ccd0ba Enable Wincompatible-function-pointer-types globally
Bug: b/257101299
Test: make checkbuild
Change-Id: I7a5adc0c04e420e6782371b3efc3fbffd367b3a2
2023-03-29 00:31:49 +00:00
Trevor Radcliffe
391a25d7fa Supporting changes for CFI toolchain features
Mostly exporting variables to Bazel, but also allowlisting a BUILD
file.

Bug: 251217226
Test: Unit tests
Change-Id: Id87015a3cd5d970700c4058ec989bb0c14c36bcb
2023-03-27 18:07:40 +00:00
Yi Kong
fd07ed2c14 Revert^2 "Update clang version to clang-r487747"
9ede280375

Bug: 264965700
Change-Id: I4154c70c050a825525d5b591fa757104eb78c158
2023-03-23 14:14:31 +00:00
Treehugger Robot
79727bd236 Merge "Enable Wunqualified-std-cast-call globally" 2023-03-15 01:41:58 +00:00
zijunzhao
96ec99a736 Enable Wunqualified-std-cast-call globally
Bug: b/239662094
Test: make checkbuild
Change-Id: Icd012c12ce13e04efa269c6898823c1178a02b74
2023-03-14 21:27:48 +00:00
Treehugger Robot
f214f12014 Merge "Respect Clang version override env vars." 2023-03-14 20:25:58 +00:00
Peter Collingbourne
ebc290c758 Respect Clang version override env vars.
Bazel fails to respect the environment variables $LLVM_PREBUILTS_VERSION
and $LLVM_RELEASE_VERSION, which are commonly used by LLVM developers
to build using a custom compiler. Fix it.

Bug: 272408039
Change-Id: I3cf18e7814ff52d526017e4fe34b17ab3d8f1080
2023-03-08 22:28:20 -08:00
Zijun Zhao
d156908820 Revert "Revert "Enable -Wformat-insufficient-args globally""
This reverts commit fa6b6843a7.

Reason for revert: Bug fix: https://googleplex-android-review.git.corp.google.com/c/platform/vendor/google/whitechapel/audio/+/21912759

Change-Id: I1c95f8d813171b500fa48c809bcffb0af7179f9a
2023-03-08 23:48:45 +00:00
Ian Kasprzak
fa6b6843a7 Revert "Enable -Wformat-insufficient-args globally"
This reverts commit bb55424e55.

Reason for revert: b/272272172 - Breaking multiple builds on git_tm-qpr-dev-plus-aosp

Testing: https://android-build.googleplex.com/builds/abtd/run/L83100000959000587


Change-Id: I854e24735689b5a3b8373d3bc947d184338eedde
2023-03-08 16:49:33 +00:00
zijunzhao
bb55424e55 Enable -Wformat-insufficient-args globally
Bug: b/191699019
Test: make checkbuild
Change-Id: Ie60d626345b9a448c3d0939faba9b6250ab34f94
2023-03-08 05:18:10 +00:00
Helen Qin
9ede280375 Revert "Update clang version to clang-r487747"
Revert submission 2446165-update-clang-r487747

Reason for revert: DroidMonitor-triggered revert due to breakage bug b/271252582 and b/271243811

Reverted changes: /q/submissionid:2446165-update-clang-r487747

Bug: 271252582
Bug: 271243811
Change-Id: I3b5c44982d268b5c6c3db39e7af4d7aa7c6dfbf7
2023-03-01 19:31:36 +00:00
Yi Kong
836690b593 Update clang version to clang-r487747
Test: presubmit
Bug: 264965700
Change-Id: I2db879f4dcc77b606c788b3e3890ed2a3faa6594
2023-02-23 20:49:59 +00:00
Andrea Zilio
cc1d984d49 Revert "Enable -Wformat-insufficient-args globally"
This reverts commit af8b950357.

Reason for revert: Broke the build, see b/269687118

Change-Id: I6f7fac0e24c710bd00af77e4d96c845eefe0a9ce
2023-02-17 11:51:10 +00:00
zijunzhao
af8b950357 Enable -Wformat-insufficient-args globally
Bug: b/191699019
Test: m
Change-Id: I6349308d1f8b13e5c5d75b154e8c9b53d9eec4bf
2023-02-16 17:52:22 +00:00
Yi Kong
d80f6eebc9 Remove bug links for noOverrideExternalGlobalCflags
We are not going to fix these warnings for 3p projects, there is no
point keeping a bug link here.

Test: N/A
Change-Id: I1c2479d8919b1c1b10287e021827b78c52813585
2023-02-16 16:51:31 +09:00
zijunzhao
2863c0a40c Enable -Wnull-dereference globally
Bug: b/29823425
Test: m
Change-Id: I8d73cbc92b06829d8b937af262298d54c7697404
2023-02-09 19:05:09 +00:00
Yi Kong
bd1888156a Migrate to the new clang lib dir
Test: presubmit
Change-Id: I7ac7eb415a5f5c3d8b6d9298c1b4ccf2839aaea6
2023-02-08 19:54:05 +09:00
zijunzhao
13b00771b6 A nit of code comment
This is not the correct bug link. It should be removed when enabling
-Wxor-used-as-pow in external. See: aosp/2356123

Bug: None
Test: None
Change-Id: I6bc1d35e07ed11fc0c70a625b0035348a6428678
2023-02-07 23:36:11 +00:00
zijunzhao
aeb73f8e57 Disable -Wformat-insufficient-args for external code.
Bug: 191699019
Test: presubmit
Change-Id: I8af5ccdca4078468d6de2f6212045875d7c6541b
2023-02-06 23:34:18 +00:00
zijunzhao
14e68a250c Fix overwritten bug of noOverride64GlobalCflags support on Soong
Bug: b/261642850
Test: Build and check warnings. Add two xfail tests in bionic and see the
results locally.

Change-Id: I61be649f935c05461bdd6c260627f3c72261a9e8
2023-01-26 19:41:49 +00:00
zijunzhao
933e38093d Add noOverride64GlobalCflags support to Soong
Bug: b/261642850
Test: Build and check warnings. Add two xfail tests in bionic and see the
results locally.

Change-Id: I68fca0084787c329b6c49ce4dff6fd132f820735
2023-01-25 04:02:29 +00:00
Yi Kong
60a2010415 Make LLVM_NEXT extra cflags no override
Test: m nothing
Change-Id: I2cf7ab1dcc9cb23298c45b6bf38f8ecc2a9d951e
2023-01-13 04:40:18 +09:00
Yi Kong
a8b0bfbeab Do not report warnings when testing with the top of trunk LLVM
also clean up flags for Clang r475365.

Test: LLVM_NEXT=true m
Change-Id: I6ebbedc6b3e3adb50c156b852eb113a1c64ffc2a
2022-12-26 16:03:54 +09:00
Yu Liu
19ea53de84 Support env based compiler flags.
Bug: 187086342
Test: Manual and unit tests.
Change-Id: Ic8e5f09dd6552e1121174bb00f0aae647661cf7b
2022-12-21 12:39:30 -08:00
Krzysztof Kosiński
af32e1ba3f Enable -Wno-xor-as-pow for external code.
Bug: 145211022
Test: presubmit
Change-Id: I025842df61cfd3657b21159fe4c05da857043a4c
2022-12-14 22:38:51 +00:00
Yabin Cui
8e6aeb7682 Update clang version to clang-r475365b
Bug: 253033919
Test: build

Change-Id: Id0fc8e1b135c9478b73d0e0cb5a249c5bd3474ea
2022-12-12 10:02:04 -08:00
Treehugger Robot
c6bea2d26e Merge "Reland "Update clang version to clang-r475365"" 2022-12-01 04:08:08 +00:00
Chih-hung Hsieh
ecd88699fa Reland "Enable sizeof-array-div warning"
This reverts commit 6be24baec4.

Reason for revert: warnings fixed in source files

Change-Id: I223ff6343c41ac957485726a3de006a84b9369df
2022-12-01 01:02:10 +00:00
Yabin Cui
29f248b086 Reland "Update clang version to clang-r475365"
This reverts commit a558be6472.
Reason for revert: broken build was fixed

Bug: 253033919
Test: build
Change-Id: If6adf2ece00081eb2eeec7895461293751f94be1
2022-11-30 13:34:35 -08:00
Yabin Cui
a7526ad43a Merge "Revert "Update clang version to clang-r475365"" 2022-11-30 02:02:37 +00:00