]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - sim/ppc/altivec_expression.h
Update the copyright notice of some of the files I missed
[thirdparty/binutils-gdb.git] / sim / ppc / altivec_expression.h
CommitLineData
345d88d9
AC
1/* Altivec expression macros, for PSIM, the PowerPC simulator.
2
e4d013fc 3 Copyright 2003, 2007, 2008, 2009 Free Software Foundation, Inc.
345d88d9
AC
4
5 Contributed by Red Hat Inc; developed under contract from Motorola.
6 Written by matthew green <mrg@redhat.com>.
7
8 This file is part of GDB.
9
10 This program is free software; you can redistribute it and/or modify
11 it under the terms of the GNU General Public License as published by
4744ac1b 12 the Free Software Foundation; either version 3 of the License, or
345d88d9
AC
13 (at your option) any later version.
14
15 This program is distributed in the hope that it will be useful,
16 but WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 GNU General Public License for more details.
19
20 You should have received a copy of the GNU General Public License
4744ac1b 21 along with this program. If not, see <http://www.gnu.org/licenses/>. */
345d88d9
AC
22
23/* AltiVec macro helpers. */
24
25#define ALTIVEC_SET_CR6(vS, checkone) \
26do { \
27 if (checkone && ((*vS).w[0] == 0xffffffff && \
28 (*vS).w[1] == 0xffffffff && \
29 (*vS).w[2] == 0xffffffff && \
30 (*vS).w[3] == 0xffffffff)) \
31 CR_SET(6, 1 << 3); \
32 else if ((*vS).w[0] == 0 && \
33 (*vS).w[1] == 0 && \
34 (*vS).w[2] == 0 && \
35 (*vS).w[3] == 0) \
36 CR_SET(6, 1 << 1); \
37 else \
38 CR_SET(6, 0); \
39} while (0)
40
41#define VSCR_SAT 0x00000001
42#define VSCR_NJ 0x00010000
43
44#define ALTIVEC_SET_SAT(sat) \
45do { \
46 if (sat) \
47 VSCR |= VSCR_SAT; \
48} while (0)