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

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [gnu-src/] [gdb-7.2/] [sim/] [testsuite/] [sim/] [frv/] [ftug.cgs] - Rev 373

Go to most recent revision | Compare with Previous | Blame | View Log

# frv testcase for ftug $FCCi_2,$GRi,$GRj
# mach: all

        .include "testutils.inc"

        start

        .global ftug
ftug:
        and_spr_immed   -4081,tbr               ; clear tbr.tt
        set_gr_spr      tbr,gr7
        inc_gr_immed    2112,gr7                ; address of exception handler
        set_bctrlr_0_0  gr7     ; bctrlr 0,0

        set_spr_immed   128,lcr
        set_gr_immed    0,gr7
        set_gr_immed    4,gr8

        set_spr_addr    bad,lr
        set_fcc         0x0 0
        ftug            fcc0,gr7,gr8    ; should branch to tbr + (128 + 4)*16

        set_psr_et      1
        set_spr_addr    ok1,lr
        set_fcc         0x1 0
        ftug            fcc0,gr7,gr8    ; should branch to tbr + (128 + 4)*16
        fail
ok1:
        set_psr_et      1
        set_spr_addr    ok2,lr
        set_fcc         0x2 0
        ftug            fcc0,gr7,gr8    ; should branch to tbr + (128 + 4)*16
        fail
ok2:
        set_psr_et      1
        set_spr_addr    ok3,lr
        set_fcc         0x3 0
        ftug            fcc0,gr7,gr8    ; should branch to tbr + (128 + 4)*16
        fail
ok3:
        set_spr_addr    bad,lr
        set_fcc         0x4 0
        ftug            fcc0,gr7,gr8    ; should branch to tbr + (128 + 4)*16

        set_psr_et      1
        set_spr_addr    ok5,lr
        set_fcc         0x5 0
        ftug            fcc0,gr7,gr8    ; should branch to tbr + (128 + 4)*16
        fail
ok5:
        set_psr_et      1
        set_spr_addr    ok6,lr
        set_fcc         0x6 0
        ftug            fcc0,gr7,gr8    ; should branch to tbr + (128 + 4)*16
        fail
ok6:
        set_psr_et      1
        set_spr_addr    ok7,lr
        set_fcc         0x7 0
        ftug            fcc0,gr7,gr8    ; should branch to tbr + (128 + 4)*16
        fail
ok7:
        set_spr_addr    bad,lr
        set_fcc         0x8 0
        ftug            fcc0,gr7,gr8    ; should branch to tbr + (128 + 4)*16

        set_psr_et      1
        set_spr_addr    ok9,lr
        set_fcc         0x9 0
        ftug            fcc0,gr7,gr8    ; should branch to tbr + (128 + 4)*16
        fail
ok9:
        set_psr_et      1
        set_spr_addr    oka,lr
        set_fcc         0xa 0
        ftug            fcc0,gr7,gr8    ; should branch to tbr + (128 + 4)*16
        fail
oka:
        set_psr_et      1
        set_spr_addr    okb,lr
        set_fcc         0xb 0
        ftug            fcc0,gr7,gr8    ; should branch to tbr + (128 + 4)*16
        fail
okb:
        set_spr_addr    bad,lr
        set_fcc         0xc 0
        ftug            fcc0,gr7,gr8    ; should branch to tbr + (128 + 4)*16

        set_psr_et      1
        set_spr_addr    okd,lr
        set_fcc         0xd 0
        ftug            fcc0,gr7,gr8    ; should branch to tbr + (128 + 4)*16
        fail
okd:
        set_psr_et      1
        set_spr_addr    oke,lr
        set_fcc         0xe 0
        ftug            fcc0,gr7,gr8    ; should branch to tbr + (128 + 4)*16
        fail
oke:
        set_psr_et      1
        set_spr_addr    okf,lr
        set_fcc         0xf 0
        ftug            fcc0,gr7,gr8    ; should branch to tbr + (128 + 4)*16
        fail
okf:
        pass
bad:
        fail

Go to most recent revision | Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

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