]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - sim/testsuite/sim/mips/utils-mdmx.inc
Update the copyright notice of some of the files I missed
[thirdparty/binutils-gdb.git] / sim / testsuite / sim / mips / utils-mdmx.inc
CommitLineData
cdc89eb2 1# MIPS simulator testsuite MDMX utility functions.
e4d013fc 2# Copyright (C) 2004, 2007, 2008, 2009 Free Software Foundation, Inc.
cdc89eb2
CD
3# Contributed by Chris Demetriou of Broadcom Corporation.
4#
5# This file is part of the GNU simulators.
6#
7# This program is free software; you can redistribute it and/or modify
8# it under the terms of the GNU General Public License as published by
db95e312
JB
9# the Free Software Foundation; either version 3 of the License, or
10# (at your option) any later version.
cdc89eb2
CD
11#
12# This program is distributed in the hope that it will be useful,
13# but WITHOUT ANY WARRANTY; without even the implied warranty of
14# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15# GNU General Public License for more details.
16#
db95e312
JB
17# You should have received a copy of the GNU General Public License
18# along with this program. If not, see <http://www.gnu.org/licenses/>. */
cdc89eb2 19
adad0f8a
CD
20 .include "utils-fpu.inc"
21
cdc89eb2
CD
22 ###
23 ### Shared macros
24 ###
25
adad0f8a 26 # Enable MDMX: enable the FPU w/ FR=1, then set Status.MX
cdc89eb2 27 .macro enable_mdmx
adad0f8a
CD
28 enable_fpu 1
29 mfc0 $20, $12
30 or $20, $20, (1 << 24)
31 mtc0 $20, $12
cdc89eb2
CD
32 .endm
33
34
35 ###
36 ### .OB-format macros
37 ###
38
39 .macro ld_ob r, v
40 .data
411: .dword \v
42 .previous
43 ldc1 \r, 1b
44 .endm
45
46 .macro ck_ob r, v
47 .data
481: .dword \v
49 .previous
50 dmfc1 $20, \r
51 ld $21, 1b
52 bne $20, $21, _fail
53 nop
54 .endm
55
56 .macro ld_acc_ob h, m, l
57 ld_ob $f20, \m
58 ld_ob $f21, \l
59 wacl.ob $f20, $f21
60 ld_ob $f20, \h
61 wach.ob $f20
62 .endm
63
64 .macro ck_acc_ob h, m, l
65 rach.ob $f20
66 ck_ob $f20, \h
67 racm.ob $f20
68 ck_ob $f20, \m
69 racl.ob $f20
70 ck_ob $f20, \l
71 .endm