OpenCores
URL https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk

Subversion Repositories openrisc_2011-10-31

[/] [openrisc/] [tags/] [gdb/] [gdb-6.8/] [gdb-6.8.openrisc-2.1/] [sim/] [testsuite/] [sim/] [v850/] [divh.cgs] - Diff between revs 24 and 33

Only display areas with differences | Details | Blame | View Log

Rev 24 Rev 33
# v850 divh
# v850 divh
# mach: all
# mach: all
        .include "testutils.inc"
        .include "testutils.inc"
# Regular division - check signs
# Regular division - check signs
        seti    6, r1
        seti    6, r1
        seti    45, r2
        seti    45, r2
        divh    r1, r2
        divh    r1, r2
        flags   0
        flags   0
        reg     r1, 6
        reg     r1, 6
        reg     r2, 7
        reg     r2, 7
        seti    -6, r1
        seti    -6, r1
        seti    45, r2
        seti    45, r2
        divh    r1, r2
        divh    r1, r2
        flags   s
        flags   s
        reg     r1, -6
        reg     r1, -6
        reg     r2, -7
        reg     r2, -7
        seti    6, r1
        seti    6, r1
        seti    -45, r2
        seti    -45, r2
        divh    r1, r2
        divh    r1, r2
        flags   s
        flags   s
        reg     r1, 6
        reg     r1, 6
        reg     r2, -7
        reg     r2, -7
        seti    -6, r1
        seti    -6, r1
        seti    -45, r2
        seti    -45, r2
        divh    r1, r2
        divh    r1, r2
        flags   0
        flags   0
        reg     r1, -6
        reg     r1, -6
        reg     r2, 7
        reg     r2, 7
# Only the lower half of the dividend is used
# Only the lower half of the dividend is used
        seti    0x0000fffa, r1
        seti    0x0000fffa, r1
        seti    -45, r2
        seti    -45, r2
        divh    r1, r2
        divh    r1, r2
        flags   0
        flags   0
        reg     r1, 0x0000fffa
        reg     r1, 0x0000fffa
        reg     r2, 7
        reg     r2, 7
# If the data is divhided by zero, OV=1 and the quotient is undefined.
# If the data is divhided by zero, OV=1 and the quotient is undefined.
# According to NEC, the S and Z flags, and the output registers, are
# According to NEC, the S and Z flags, and the output registers, are
# unchanged.
# unchanged.
        noflags
        noflags
        seti    0, r1
        seti    0, r1
        seti    45, r2
        seti    45, r2
        seti    67, r3
        seti    67, r3
        divh    r1, r2
        divh    r1, r2
        flags   v
        flags   v
        reg     r2, 45
        reg     r2, 45
        allflags
        allflags
        seti    0, r1
        seti    0, r1
        seti    45, r2
        seti    45, r2
        seti    67, r3
        seti    67, r3
        divh    r1, r2
        divh    r1, r2
        flags   sat + c + v + s + z
        flags   sat + c + v + s + z
        reg     r2, 45
        reg     r2, 45
# Zero / (N!=0) => normal
# Zero / (N!=0) => normal
        noflags
        noflags
        seti    45, r1
        seti    45, r1
        seti    0, r2
        seti    0, r2
        seti    67, r3
        seti    67, r3
        divh    r1, r2
        divh    r1, r2
        flags   z
        flags   z
        reg     r1, 45
        reg     r1, 45
        reg     r2, 0
        reg     r2, 0
# Test for regular overflow
# Test for regular overflow
        noflags
        noflags
        seti    -1, r1
        seti    -1, r1
        seti    0x80000000, r2
        seti    0x80000000, r2
        divh    r1, r2
        divh    r1, r2
        flags   v + s
        flags   v + s
        reg     r1, -1
        reg     r1, -1
        reg     r2, 0x80000000
        reg     r2, 0x80000000
        pass
        pass
 
 

powered by: WebSVN 2.1.0

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