diff options
Diffstat (limited to 'tests/tcg/mips/mips64-dsp/shrav_r_ph.c')
| -rw-r--r-- | tests/tcg/mips/mips64-dsp/shrav_r_ph.c | 24 | 
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/tcg/mips/mips64-dsp/shrav_r_ph.c b/tests/tcg/mips/mips64-dsp/shrav_r_ph.c new file mode 100644 index 00000000..350d5294 --- /dev/null +++ b/tests/tcg/mips/mips64-dsp/shrav_r_ph.c @@ -0,0 +1,24 @@ +#include "io.h" + +int main(void) +{ +    long long rd, rs, rt; +    long long result; + +    rs     = 0x03; +    rt     = 0x87654321; +    result = 0xFFFFFFFFF0ED0864; + +    __asm +        ("shrav_r.ph %0, %1, %2\n\t" +         : "=r"(rd) +         : "r"(rt), "r"(rs) +        ); +    if (rd != result) { +        printf("shrav_r.ph wrong\n"); + +        return -1; +    } + +    return 0; +}  | 
