Suppress three counts of compiler warnings for frame size limit exceeded
-Wframe-larger-than= was not enforced when LTO is enabled, until the
upcoming compiler update. Suppress the warnings for now to unblock the
update process, and then the ART team can reproduce the breakage.
Bug: 197647048
Test: build
Change-Id: Ief1d999efaff4e92a1e44b81d56afec87ee43e72
diff --git a/runtime/gc/heap.cc b/runtime/gc/heap.cc
index f7eea75..3886b4c 100644
--- a/runtime/gc/heap.cc
+++ b/runtime/gc/heap.cc
@@ -2341,6 +2341,8 @@
# pragma clang diagnostic ignored "-Wframe-larger-than="
#endif
// This has a large frame, but shouldn't be run anywhere near the stack limit.
+// FIXME: BUT it did exceed... http://b/197647048
+# pragma clang diagnostic ignored "-Wframe-larger-than="
void Heap::PreZygoteFork() {
if (!HasZygoteSpace()) {
// We still want to GC in case there is some unreachable non moving objects that could cause a
diff --git a/runtime/thread.cc b/runtime/thread.cc
index 4ade7c7..e5b19e5 100644
--- a/runtime/thread.cc
+++ b/runtime/thread.cc
@@ -4114,6 +4114,10 @@
}
}
+// FIXME: clang-r433403 reports the below function exceeds frame size limit.
+// http://b/197647048
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wframe-larger-than="
template <bool kPrecise>
void Thread::VisitRoots(RootVisitor* visitor) {
const uint32_t thread_id = GetThreadId();
@@ -4175,6 +4179,7 @@
visitor->VisitRootIfNonNull(&entry.second.this_object_, RootInfo(kRootVMInternal, thread_id));
}
}
+#pragma GCC diagnostic pop
void Thread::SweepInterpreterCache(IsMarkedVisitor* visitor) {
for (InterpreterCache::Entry& entry : GetInterpreterCache()->GetArray()) {
@@ -4211,6 +4216,10 @@
}
}
+// FIXME: clang-r433403 reports the below function exceeds frame size limit.
+// http://b/197647048
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wframe-larger-than="
void Thread::VisitRoots(RootVisitor* visitor, VisitRootFlags flags) {
if ((flags & VisitRootFlags::kVisitRootFlagPrecise) != 0) {
VisitRoots</* kPrecise= */ true>(visitor);
@@ -4218,6 +4227,7 @@
VisitRoots</* kPrecise= */ false>(visitor);
}
}
+#pragma GCC diagnostic pop
class VerifyRootVisitor : public SingleRootVisitor {
public: