Skip to content
Snippets Groups Projects
Commit 20de8c3b authored by Aaron Lewis's avatar Aaron Lewis Committed by Paolo Bonzini
Browse files

x86: Fix test failures as a result of using clang-18


When building 'debug' test on clang-18 the compiler more aggressively
inlines helper functions.  This results in test failures because some
of the helpers are not intended to be inlined.  Fix this by marking
those functions with 'noinline'.

Reported-by: default avatarJohn Sperbeck <jsperbeck@google.com>
Signed-off-by: default avatarAaron Lewis <aaronlewis@google.com>
Message-Id: <20221129203240.1815829-1-aaronlewis@google.com>
Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
parent 91cc4c3c
No related branches found
No related tags found
No related merge requests found
Pipeline #804617042 failed
......@@ -128,7 +128,7 @@ static void report_singlestep_basic(unsigned long start, const char *usermode)
"%sSingle-step #DB basic test", usermode);
}
static unsigned long singlestep_basic(void)
static noinline unsigned long singlestep_basic(void)
{
unsigned long start;
......@@ -165,7 +165,7 @@ static void report_singlestep_emulated_instructions(unsigned long start,
"%sSingle-step #DB on emulated instructions", usermode);
}
static unsigned long singlestep_emulated_instructions(void)
static noinline unsigned long singlestep_emulated_instructions(void)
{
unsigned long start;
......@@ -204,7 +204,7 @@ static void report_singlestep_with_sti_blocking(unsigned long start,
}
static unsigned long singlestep_with_sti_blocking(void)
static noinline unsigned long singlestep_with_sti_blocking(void)
{
unsigned long start_rip;
......@@ -239,7 +239,7 @@ static void report_singlestep_with_movss_blocking(unsigned long start,
"%sSingle-step #DB w/ MOVSS blocking", usermode);
}
static unsigned long singlestep_with_movss_blocking(void)
static noinline unsigned long singlestep_with_movss_blocking(void)
{
unsigned long start_rip;
......@@ -277,7 +277,7 @@ static void report_singlestep_with_movss_blocking_and_icebp(unsigned long start,
"%sSingle-Step + ICEBP #DB w/ MOVSS blocking", usermode);
}
static unsigned long singlestep_with_movss_blocking_and_icebp(void)
static noinline unsigned long singlestep_with_movss_blocking_and_icebp(void)
{
unsigned long start;
......@@ -320,7 +320,7 @@ static void report_singlestep_with_movss_blocking_and_dr7_gd(unsigned long start
"Single-step #DB w/ MOVSS blocking and DR7.GD=1");
}
static unsigned long singlestep_with_movss_blocking_and_dr7_gd(void)
static noinline unsigned long singlestep_with_movss_blocking_and_dr7_gd(void)
{
unsigned long start_rip;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment