Hexagon (tests/tcg/hexagon) Test HVX .new read from high half of pair
Make sure the decoding of HVX .new is correctly handling this case Signed-off-by: Taylor Simpson <ltaylorsimpson@gmail.com> Reviewed-by: Brian Cain <bcain@quicinc.com> Message-Id: <20240307032327.4799-6-ltaylorsimpson@gmail.com> Signed-off-by: Brian Cain <bcain@quicinc.com>
This commit is contained in:
parent
4614b8f36a
commit
b887b6b71c
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright(c) 2021-2023 Qualcomm Innovation Center, Inc. All Rights Reserved.
|
||||
* Copyright(c) 2021-2024 Qualcomm Innovation Center, Inc. All Rights Reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
@ -231,6 +231,7 @@ static void test_masked_store(bool invert)
|
||||
static void test_new_value_store(void)
|
||||
{
|
||||
void *p0 = buffer0;
|
||||
void *p1 = buffer1;
|
||||
void *pout = output;
|
||||
|
||||
asm("{\n\t"
|
||||
@ -242,6 +243,19 @@ static void test_new_value_store(void)
|
||||
expect[0] = buffer0[0];
|
||||
|
||||
check_output_w(__LINE__, 1);
|
||||
|
||||
/* Test the .new read from the high half of a pair */
|
||||
asm("v7 = vmem(%0 + #0)\n\t"
|
||||
"v12 = vmem(%1 + #0)\n\t"
|
||||
"{\n\t"
|
||||
" v5:4 = vcombine(v12, v7)\n\t"
|
||||
" vmem(%2 + #0) = v5.new\n\t"
|
||||
"}\n\t"
|
||||
: : "r"(p0), "r"(p1), "r"(pout) : "v4", "v5", "v7", "v12", "memory");
|
||||
|
||||
expect[0] = buffer1[0];
|
||||
|
||||
check_output_w(__LINE__, 1);
|
||||
}
|
||||
|
||||
static void test_max_temps()
|
||||
|
Loading…
Reference in New Issue
Block a user