OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [tags/] [gnu-src/] [gdb-6.8/] [pre-binutils-2.20.1-sync/] [sim/] [testsuite/] [sim/] [arm/] [iwmmxt/] [wsub.cgs] - Diff between revs 157 and 223

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

Rev 157 Rev 223
# Intel(r) Wireless MMX(tm) technology testcase for WSUB
# Intel(r) Wireless MMX(tm) technology testcase for WSUB
# mach: xscale
# mach: xscale
# as: -mcpu=xscale+iwmmxt
# as: -mcpu=xscale+iwmmxt
        .include "testutils.inc"
        .include "testutils.inc"
        start
        start
        .global wsub
        .global wsub
wsub:
wsub:
        # Enable access to CoProcessors 0 & 1 before
        # Enable access to CoProcessors 0 & 1 before
        # we attempt these instructions.
        # we attempt these instructions.
        mvi_h_gr   r1, 3
        mvi_h_gr   r1, 3
        mcr        p15, 0, r1, cr15, cr1, 0
        mcr        p15, 0, r1, cr15, cr1, 0
        # Test Unsaturated Byte subtraction
        # Test Unsaturated Byte subtraction
        mvi_h_gr   r0, 0x12345678
        mvi_h_gr   r0, 0x12345678
        mvi_h_gr   r1, 0x9abcde00
        mvi_h_gr   r1, 0x9abcde00
        mvi_h_gr   r2, 0x11111111
        mvi_h_gr   r2, 0x11111111
        mvi_h_gr   r3, 0x11111111
        mvi_h_gr   r3, 0x11111111
        mvi_h_gr   r4, 0
        mvi_h_gr   r4, 0
        mvi_h_gr   r5, 0
        mvi_h_gr   r5, 0
        tmcrr      wr0, r0, r1
        tmcrr      wr0, r0, r1
        tmcrr      wr1, r2, r3
        tmcrr      wr1, r2, r3
        tmcrr      wr2, r4, r5
        tmcrr      wr2, r4, r5
        wsubb      wr2, wr0, wr1
        wsubb      wr2, wr0, wr1
        tmrrc      r0, r1, wr0
        tmrrc      r0, r1, wr0
        tmrrc      r2, r3, wr1
        tmrrc      r2, r3, wr1
        tmrrc      r4, r5, wr2
        tmrrc      r4, r5, wr2
        test_h_gr  r0, 0x12345678
        test_h_gr  r0, 0x12345678
        test_h_gr  r1, 0x9abcde00
        test_h_gr  r1, 0x9abcde00
        test_h_gr  r2, 0x11111111
        test_h_gr  r2, 0x11111111
        test_h_gr  r3, 0x11111111
        test_h_gr  r3, 0x11111111
        test_h_gr  r4, 0x01234567
        test_h_gr  r4, 0x01234567
        test_h_gr  r5, 0x89abcdef
        test_h_gr  r5, 0x89abcdef
        # Test Unsigned saturated Byte subtraction
        # Test Unsigned saturated Byte subtraction
        mvi_h_gr   r0, 0x12345678
        mvi_h_gr   r0, 0x12345678
        mvi_h_gr   r1, 0x9abcde00
        mvi_h_gr   r1, 0x9abcde00
        mvi_h_gr   r2, 0x11111111
        mvi_h_gr   r2, 0x11111111
        mvi_h_gr   r3, 0x11111111
        mvi_h_gr   r3, 0x11111111
        mvi_h_gr   r4, 0
        mvi_h_gr   r4, 0
        mvi_h_gr   r5, 0
        mvi_h_gr   r5, 0
        tmcrr      wr0, r0, r1
        tmcrr      wr0, r0, r1
        tmcrr      wr1, r2, r3
        tmcrr      wr1, r2, r3
        tmcrr      wr2, r4, r5
        tmcrr      wr2, r4, r5
        wsubbus    wr2, wr0, wr1
        wsubbus    wr2, wr0, wr1
        tmrrc      r0, r1, wr0
        tmrrc      r0, r1, wr0
        tmrrc      r2, r3, wr1
        tmrrc      r2, r3, wr1
        tmrrc      r4, r5, wr2
        tmrrc      r4, r5, wr2
        test_h_gr  r0, 0x12345678
        test_h_gr  r0, 0x12345678
        test_h_gr  r1, 0x9abcde00
        test_h_gr  r1, 0x9abcde00
        test_h_gr  r2, 0x11111111
        test_h_gr  r2, 0x11111111
        test_h_gr  r3, 0x11111111
        test_h_gr  r3, 0x11111111
        test_h_gr  r4, 0x01234567
        test_h_gr  r4, 0x01234567
        test_h_gr  r5, 0x89abcd00
        test_h_gr  r5, 0x89abcd00
        # Test Signed saturated Byte subtraction
        # Test Signed saturated Byte subtraction
        mvi_h_gr   r0, 0x12345678
        mvi_h_gr   r0, 0x12345678
        mvi_h_gr   r1, 0x9abcde00
        mvi_h_gr   r1, 0x9abcde00
        mvi_h_gr   r2, 0x11111111
        mvi_h_gr   r2, 0x11111111
        mvi_h_gr   r3, 0x11111111
        mvi_h_gr   r3, 0x11111111
        mvi_h_gr   r4, 0
        mvi_h_gr   r4, 0
        mvi_h_gr   r5, 0
        mvi_h_gr   r5, 0
        tmcrr      wr0, r0, r1
        tmcrr      wr0, r0, r1
        tmcrr      wr1, r2, r3
        tmcrr      wr1, r2, r3
        tmcrr      wr2, r4, r5
        tmcrr      wr2, r4, r5
        wsubbss    wr2, wr0, wr1
        wsubbss    wr2, wr0, wr1
        tmrrc      r0, r1, wr0
        tmrrc      r0, r1, wr0
        tmrrc      r2, r3, wr1
        tmrrc      r2, r3, wr1
        tmrrc      r4, r5, wr2
        tmrrc      r4, r5, wr2
        test_h_gr  r0, 0x12345678
        test_h_gr  r0, 0x12345678
        test_h_gr  r1, 0x9abcde00
        test_h_gr  r1, 0x9abcde00
        test_h_gr  r2, 0x11111111
        test_h_gr  r2, 0x11111111
        test_h_gr  r3, 0x11111111
        test_h_gr  r3, 0x11111111
        test_h_gr  r4, 0x01234567
        test_h_gr  r4, 0x01234567
        test_h_gr  r5, 0x89abcdef
        test_h_gr  r5, 0x89abcdef
        # Test Unsaturated Halfword subtraction
        # Test Unsaturated Halfword subtraction
        mvi_h_gr   r0, 0x12345678
        mvi_h_gr   r0, 0x12345678
        mvi_h_gr   r1, 0x9abcde00
        mvi_h_gr   r1, 0x9abcde00
        mvi_h_gr   r2, 0x11111111
        mvi_h_gr   r2, 0x11111111
        mvi_h_gr   r3, 0x11111111
        mvi_h_gr   r3, 0x11111111
        mvi_h_gr   r4, 0
        mvi_h_gr   r4, 0
        mvi_h_gr   r5, 0
        mvi_h_gr   r5, 0
        tmcrr      wr0, r0, r1
        tmcrr      wr0, r0, r1
        tmcrr      wr1, r2, r3
        tmcrr      wr1, r2, r3
        tmcrr      wr2, r4, r5
        tmcrr      wr2, r4, r5
        wsubh      wr2, wr0, wr1
        wsubh      wr2, wr0, wr1
        tmrrc      r0, r1, wr0
        tmrrc      r0, r1, wr0
        tmrrc      r2, r3, wr1
        tmrrc      r2, r3, wr1
        tmrrc      r4, r5, wr2
        tmrrc      r4, r5, wr2
        test_h_gr  r0, 0x12345678
        test_h_gr  r0, 0x12345678
        test_h_gr  r1, 0x9abcde00
        test_h_gr  r1, 0x9abcde00
        test_h_gr  r2, 0x11111111
        test_h_gr  r2, 0x11111111
        test_h_gr  r3, 0x11111111
        test_h_gr  r3, 0x11111111
        test_h_gr  r4, 0x01234567
        test_h_gr  r4, 0x01234567
        test_h_gr  r5, 0x89abccef
        test_h_gr  r5, 0x89abccef
        # Test Unsigned saturated Halfword subtraction
        # Test Unsigned saturated Halfword subtraction
        mvi_h_gr   r0, 0x12345678
        mvi_h_gr   r0, 0x12345678
        mvi_h_gr   r1, 0x9abcde00
        mvi_h_gr   r1, 0x9abcde00
        mvi_h_gr   r2, 0x11111111
        mvi_h_gr   r2, 0x11111111
        mvi_h_gr   r3, 0x11111111
        mvi_h_gr   r3, 0x11111111
        mvi_h_gr   r4, 0
        mvi_h_gr   r4, 0
        mvi_h_gr   r5, 0
        mvi_h_gr   r5, 0
        tmcrr      wr0, r0, r1
        tmcrr      wr0, r0, r1
        tmcrr      wr1, r2, r3
        tmcrr      wr1, r2, r3
        tmcrr      wr2, r4, r5
        tmcrr      wr2, r4, r5
        wsubhus    wr2, wr0, wr1
        wsubhus    wr2, wr0, wr1
        tmrrc      r0, r1, wr0
        tmrrc      r0, r1, wr0
        tmrrc      r2, r3, wr1
        tmrrc      r2, r3, wr1
        tmrrc      r4, r5, wr2
        tmrrc      r4, r5, wr2
        test_h_gr  r0, 0x12345678
        test_h_gr  r0, 0x12345678
        test_h_gr  r1, 0x9abcde00
        test_h_gr  r1, 0x9abcde00
        test_h_gr  r2, 0x11111111
        test_h_gr  r2, 0x11111111
        test_h_gr  r3, 0x11111111
        test_h_gr  r3, 0x11111111
        test_h_gr  r4, 0x01234567
        test_h_gr  r4, 0x01234567
        test_h_gr  r5, 0x89abccef
        test_h_gr  r5, 0x89abccef
        # Test Signed saturated Halfword subtraction
        # Test Signed saturated Halfword subtraction
        mvi_h_gr   r0, 0x12345678
        mvi_h_gr   r0, 0x12345678
        mvi_h_gr   r1, 0x9abcde00
        mvi_h_gr   r1, 0x9abcde00
        mvi_h_gr   r2, 0x11111111
        mvi_h_gr   r2, 0x11111111
        mvi_h_gr   r3, 0x11111111
        mvi_h_gr   r3, 0x11111111
        mvi_h_gr   r4, 0
        mvi_h_gr   r4, 0
        mvi_h_gr   r5, 0
        mvi_h_gr   r5, 0
        tmcrr      wr0, r0, r1
        tmcrr      wr0, r0, r1
        tmcrr      wr1, r2, r3
        tmcrr      wr1, r2, r3
        tmcrr      wr2, r4, r5
        tmcrr      wr2, r4, r5
        wsubhss    wr2, wr0, wr1
        wsubhss    wr2, wr0, wr1
        tmrrc      r0, r1, wr0
        tmrrc      r0, r1, wr0
        tmrrc      r2, r3, wr1
        tmrrc      r2, r3, wr1
        tmrrc      r4, r5, wr2
        tmrrc      r4, r5, wr2
        test_h_gr  r0, 0x12345678
        test_h_gr  r0, 0x12345678
        test_h_gr  r1, 0x9abcde00
        test_h_gr  r1, 0x9abcde00
        test_h_gr  r2, 0x11111111
        test_h_gr  r2, 0x11111111
        test_h_gr  r3, 0x11111111
        test_h_gr  r3, 0x11111111
        test_h_gr  r4, 0x01234567
        test_h_gr  r4, 0x01234567
        test_h_gr  r5, 0x89abccef
        test_h_gr  r5, 0x89abccef
        # Test Unsaturated Word subtraction
        # Test Unsaturated Word subtraction
        mvi_h_gr   r0, 0x12345678
        mvi_h_gr   r0, 0x12345678
        mvi_h_gr   r1, 0x9abcde00
        mvi_h_gr   r1, 0x9abcde00
        mvi_h_gr   r2, 0x11111111
        mvi_h_gr   r2, 0x11111111
        mvi_h_gr   r3, 0x11111111
        mvi_h_gr   r3, 0x11111111
        mvi_h_gr   r4, 0
        mvi_h_gr   r4, 0
        mvi_h_gr   r5, 0
        mvi_h_gr   r5, 0
        tmcrr      wr0, r0, r1
        tmcrr      wr0, r0, r1
        tmcrr      wr1, r2, r3
        tmcrr      wr1, r2, r3
        tmcrr      wr2, r4, r5
        tmcrr      wr2, r4, r5
        wsubw      wr2, wr0, wr1
        wsubw      wr2, wr0, wr1
        tmrrc      r0, r1, wr0
        tmrrc      r0, r1, wr0
        tmrrc      r2, r3, wr1
        tmrrc      r2, r3, wr1
        tmrrc      r4, r5, wr2
        tmrrc      r4, r5, wr2
        test_h_gr  r0, 0x12345678
        test_h_gr  r0, 0x12345678
        test_h_gr  r1, 0x9abcde00
        test_h_gr  r1, 0x9abcde00
        test_h_gr  r2, 0x11111111
        test_h_gr  r2, 0x11111111
        test_h_gr  r3, 0x11111111
        test_h_gr  r3, 0x11111111
        test_h_gr  r4, 0x01234567
        test_h_gr  r4, 0x01234567
        test_h_gr  r5, 0x89abccef
        test_h_gr  r5, 0x89abccef
        # Test Unsigned saturated Word subtraction
        # Test Unsigned saturated Word subtraction
        mvi_h_gr   r0, 0x12345678
        mvi_h_gr   r0, 0x12345678
        mvi_h_gr   r1, 0x9abcde00
        mvi_h_gr   r1, 0x9abcde00
        mvi_h_gr   r2, 0x11111111
        mvi_h_gr   r2, 0x11111111
        mvi_h_gr   r3, 0x11111111
        mvi_h_gr   r3, 0x11111111
        mvi_h_gr   r4, 0
        mvi_h_gr   r4, 0
        mvi_h_gr   r5, 0
        mvi_h_gr   r5, 0
        tmcrr      wr0, r0, r1
        tmcrr      wr0, r0, r1
        tmcrr      wr1, r2, r3
        tmcrr      wr1, r2, r3
        tmcrr      wr2, r4, r5
        tmcrr      wr2, r4, r5
        wsubwus    wr2, wr0, wr1
        wsubwus    wr2, wr0, wr1
        tmrrc      r0, r1, wr0
        tmrrc      r0, r1, wr0
        tmrrc      r2, r3, wr1
        tmrrc      r2, r3, wr1
        tmrrc      r4, r5, wr2
        tmrrc      r4, r5, wr2
        test_h_gr  r0, 0x12345678
        test_h_gr  r0, 0x12345678
        test_h_gr  r1, 0x9abcde00
        test_h_gr  r1, 0x9abcde00
        test_h_gr  r2, 0x11111111
        test_h_gr  r2, 0x11111111
        test_h_gr  r3, 0x11111111
        test_h_gr  r3, 0x11111111
        test_h_gr  r4, 0x01234567
        test_h_gr  r4, 0x01234567
        test_h_gr  r5, 0x89abccef
        test_h_gr  r5, 0x89abccef
        # Test Signed saturated Word subtraction
        # Test Signed saturated Word subtraction
        mvi_h_gr   r0, 0x12345678
        mvi_h_gr   r0, 0x12345678
        mvi_h_gr   r1, 0x9abcde00
        mvi_h_gr   r1, 0x9abcde00
        mvi_h_gr   r2, 0x11111111
        mvi_h_gr   r2, 0x11111111
        mvi_h_gr   r3, 0x11111111
        mvi_h_gr   r3, 0x11111111
        mvi_h_gr   r4, 0
        mvi_h_gr   r4, 0
        mvi_h_gr   r5, 0
        mvi_h_gr   r5, 0
        tmcrr      wr0, r0, r1
        tmcrr      wr0, r0, r1
        tmcrr      wr1, r2, r3
        tmcrr      wr1, r2, r3
        tmcrr      wr2, r4, r5
        tmcrr      wr2, r4, r5
        wsubwss    wr2, wr0, wr1
        wsubwss    wr2, wr0, wr1
        tmrrc      r0, r1, wr0
        tmrrc      r0, r1, wr0
        tmrrc      r2, r3, wr1
        tmrrc      r2, r3, wr1
        tmrrc      r4, r5, wr2
        tmrrc      r4, r5, wr2
        test_h_gr  r0, 0x12345678
        test_h_gr  r0, 0x12345678
        test_h_gr  r1, 0x9abcde00
        test_h_gr  r1, 0x9abcde00
        test_h_gr  r2, 0x11111111
        test_h_gr  r2, 0x11111111
        test_h_gr  r3, 0x11111111
        test_h_gr  r3, 0x11111111
        test_h_gr  r4, 0x01234567
        test_h_gr  r4, 0x01234567
        test_h_gr  r5, 0x89abccef
        test_h_gr  r5, 0x89abccef
        pass
        pass
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.