summaryrefslogtreecommitdiff
path: root/cc
diff options
context:
space:
mode:
author Colin Cross <ccross@android.com> 2025-03-21 15:04:59 -0700
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2025-03-21 15:04:59 -0700
commit5355996a3c0932db4bb1f6e527ca2f8407901b88 (patch)
tree8ca21cbd041025660aeb12abaed378009ee5c209 /cc
parent002547bd12142d09ddaccc4eaa9294e9ae4ef9c8 (diff)
parent07638f131eafac3cf915cbeb5d1003037347c41d (diff)
Merge "Clear as much of cc.Module as possible after GenerateBuildActions" into main am: 07638f131e
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3552206 Change-Id: I29e063fdacdf56344c925177cfdf5f4c95fe6c2a Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
Diffstat (limited to 'cc')
-rw-r--r--cc/cc.go21
1 files changed, 21 insertions, 0 deletions
diff --git a/cc/cc.go b/cc/cc.go
index 85d2ebfbb..c616165c5 100644
--- a/cc/cc.go
+++ b/cc/cc.go
@@ -2438,6 +2438,27 @@ func (c *Module) GenerateAndroidBuildActions(actx android.ModuleContext) {
}
}
+func (c *Module) CleanupAfterBuildActions() {
+ // Clear as much of Module as possible to reduce memory usage.
+ c.generators = nil
+ c.compiler = nil
+ c.installer = nil
+ c.features = nil
+ c.coverage = nil
+ c.fuzzer = nil
+ c.sabi = nil
+ c.lto = nil
+ c.afdo = nil
+ c.orderfile = nil
+
+ // TODO: these can be cleared after nativeBinaryInfoProperties and nativeLibInfoProperties are switched to
+ // using providers.
+ // c.linker = nil
+ // c.stl = nil
+ // c.sanitize = nil
+ // c.library = nil
+}
+
func CreateCommonLinkableInfo(ctx android.ModuleContext, mod VersionedLinkableInterface) *LinkableInfo {
info := &LinkableInfo{
StaticExecutable: mod.StaticExecutable(),