The enter[qwl] instructions aren't supported by clang's inline
assembler. Apply the hammer to work around it when we re-use our
system compiler to build tcg tests.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/tcg/i386/test-i386.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/tests/tcg/i386/test-i386.c b/tests/tcg/i386/test-i386.c
index c5f67000e4..da632c9b67 100644
--- a/tests/tcg/i386/test-i386.c
+++ b/tests/tcg/i386/test-i386.c
@@ -2098,6 +2098,7 @@ long enter_stack[4096];
static void test_enter(void)
{
+#if !(defined __clang__)
#if defined(__x86_64__)
TEST_ENTER("q", uint64_t, 0);
TEST_ENTER("q", uint64_t, 1);
@@ -2114,6 +2115,7 @@ static void test_enter(void)
TEST_ENTER("w", uint16_t, 1);
TEST_ENTER("w", uint16_t, 2);
TEST_ENTER("w", uint16_t, 31);
+#endif
}
#ifdef TEST_SSE
--
2.17.1
On 09/10/2018 16:59, Alex Bennée wrote:
> The enter[qwl] instructions aren't supported by clang's inline
> assembler. Apply the hammer to work around it when we re-use our
> system compiler to build tcg tests.
>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Do you have a bug for this in llvm? It doesn't seem to be a good idea.
Paolo
> ---
> tests/tcg/i386/test-i386.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/tests/tcg/i386/test-i386.c b/tests/tcg/i386/test-i386.c
> index c5f67000e4..da632c9b67 100644
> --- a/tests/tcg/i386/test-i386.c
> +++ b/tests/tcg/i386/test-i386.c
> @@ -2098,6 +2098,7 @@ long enter_stack[4096];
>
> static void test_enter(void)
> {
> +#if !(defined __clang__)
> #if defined(__x86_64__)
> TEST_ENTER("q", uint64_t, 0);
> TEST_ENTER("q", uint64_t, 1);
> @@ -2114,6 +2115,7 @@ static void test_enter(void)
> TEST_ENTER("w", uint16_t, 1);
> TEST_ENTER("w", uint16_t, 2);
> TEST_ENTER("w", uint16_t, 31);
> +#endif
> }
>
> #ifdef TEST_SSE
>
Paolo Bonzini <pbonzini@redhat.com> writes:
> On 09/10/2018 16:59, Alex Bennée wrote:
>> The enter[qwl] instructions aren't supported by clang's inline
>> assembler. Apply the hammer to work around it when we re-use our
>> system compiler to build tcg tests.
>>
>> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>
> Do you have a bug for this in llvm? It doesn't seem to be a good
> idea.
I thought I had an llvm bugzilla login but I can't find the details.
I'll have to a wait until an admin can add me.
>
> Paolo
>
>> ---
>> tests/tcg/i386/test-i386.c | 2 ++
>> 1 file changed, 2 insertions(+)
>>
>> diff --git a/tests/tcg/i386/test-i386.c b/tests/tcg/i386/test-i386.c
>> index c5f67000e4..da632c9b67 100644
>> --- a/tests/tcg/i386/test-i386.c
>> +++ b/tests/tcg/i386/test-i386.c
>> @@ -2098,6 +2098,7 @@ long enter_stack[4096];
>>
>> static void test_enter(void)
>> {
>> +#if !(defined __clang__)
>> #if defined(__x86_64__)
>> TEST_ENTER("q", uint64_t, 0);
>> TEST_ENTER("q", uint64_t, 1);
>> @@ -2114,6 +2115,7 @@ static void test_enter(void)
>> TEST_ENTER("w", uint16_t, 1);
>> TEST_ENTER("w", uint16_t, 2);
>> TEST_ENTER("w", uint16_t, 31);
>> +#endif
>> }
>>
>> #ifdef TEST_SSE
>>
--
Alex Bennée
© 2016 - 2025 Red Hat, Inc.