acpi/acpigen.c: Ignore compiler warning about stack overflowing

With arm64 -Wstack-usage= is enabled which is triggered on any use of
alloca(). Since this function basically works on x86 without wrecking
things and causing massive stack consumption it's unlikely to cause
problems on arm64.

Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Change-Id: I5d445d151db5e6cc7b6e13bf74ce81007d819f1d
Reviewed-on: https://review.coreboot.org/c/coreboot/+/76007
Reviewed-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Tim Wawrzynczak <inforichland@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Lean Sheng Tan <sheng.tan@9elements.com>
This commit is contained in:
Arthur Heymans 2023-06-22 21:04:06 +02:00 committed by Lean Sheng Tan
parent 86dfcb80ce
commit 9c1f78d3e5
1 changed files with 4 additions and 0 deletions

View File

@ -1764,6 +1764,10 @@ void acpigen_write_dsm(const char *uuid, void (**callbacks)(void *), size_t coun
* bit 0: other functions than 0 are supported * bit 0: other functions than 0 are supported
* bits 1-x: function x supported * bits 1-x: function x supported
*/ */
/* On GCC aarch64 the compiler is worried about alloca() having unbounded stack usage. */
#if defined(__GNUC__) && !defined(__clang__)
#pragma GCC diagnostic ignored "-Wstack-usage="
#endif
static void acpigen_dsm_uuid_enum_functions(const struct dsm_uuid *id) static void acpigen_dsm_uuid_enum_functions(const struct dsm_uuid *id)
{ {
const size_t bytes = DIV_ROUND_UP(id->count, BITS_PER_BYTE); const size_t bytes = DIV_ROUND_UP(id->count, BITS_PER_BYTE);