* gdbtk.tcl (files_command): Correctly insert list of files into
[deliverable/binutils-gdb.git] / sim / ppc / ppc-cache-rules
CommitLineData
5b4d72dd
MM
1#
2# This file is part of the program psim.
3#
4# Copyright (C) 1994-1995, Andrew Cagney <cagney@highland.com.au>
5#
6# This program is free software; you can redistribute it and/or modify
7# it under the terms of the GNU General Public License as published by
8# the Free Software Foundation; either version 2 of the License, or
9# (at your option) any later version.
10#
11# This program is distributed in the hope that it will be useful,
12# but WITHOUT ANY WARRANTY; without even the implied warranty of
13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14# GNU General Public License for more details.
15#
16# You should have received a copy of the GNU General Public License
17# along with this program; if not, write to the Free Software
18# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19#
20#
21# Instruction unpacking:
22#
23# Once the instruction has been decoded, the register (and other)
24# fields within the instruction need to be extracted.
25#
26# The table that follows determines how each field should be treated.
27# Importantly it considers the case where the extracted field is to
28# be used immediatly or stored in an instruction cache.
29#
30# <valid>
31#
32# Zero marks the end of the table. More importantly 1. indicates
33# that the entry is valid and can be cached. 2. indicates that that
34# the entry is valid but can not be cached.
35#
36# <old_name>
37#
38# The field name as given in the instruction spec.
39#
40# <new_name>
41#
42# A name for <old_name> once it has been extracted from the
43# instructioin (and possibly stored in the instruction cache).
44#
45# <type>
46#
47# String specifying the storage type for <new_name> (the extracted
48# field>.
49#
50# <expression>
51#
52# Specifies how to get <new_name> from <old_name>. If null, old and
53# new name had better be the same. */
54#
55#
561:RA:RA::
571:RA:rA:signed_word *:(cpu_registers(processor)->gpr + RA)
45525d8d 581:RA:RA_BITMASK:unsigned32:(1 << RA)
5b4d72dd
MM
591:RT:RT::
601:RT:rT:signed_word *:(cpu_registers(processor)->gpr + RT)
45525d8d 611:RT:RT_BITMASK:unsigned32:(1 << RT)
5b4d72dd
MM
622:RS:RS::
631:RS:rS:signed_word *:(cpu_registers(processor)->gpr + RS)
45525d8d 641:RS:RS_BITMASK:unsigned32:(1 << RS)
5b4d72dd
MM
652:RB:RB::
661:RB:rB:signed_word *:(cpu_registers(processor)->gpr + RB)
45525d8d 671:RB:RB_BITMASK:unsigned32:(1 << RB)
5b4d72dd
MM
682:FRA:FRA::
691:FRA:frA:unsigned64 *:(cpu_registers(processor)->fpr + FRA)
45525d8d 701:FRA:FRA_BITMASK:unsigned32:(1 << FRA)
5b4d72dd
MM
712:FRB:FRB::
721:FRB:frB:unsigned64 *:(cpu_registers(processor)->fpr + FRB)
45525d8d 731:FRB:FRB_BITMASK:unsigned32:(1 << FRB)
5b4d72dd
MM
742:FRC:FRC::
751:FRC:frC:unsigned64 *:(cpu_registers(processor)->fpr + FRC)
45525d8d 761:FRC:FRC_BITMASK:unsigned32:(1 << FRC)
5b4d72dd
MM
772:FRS:FRS::
781:FRS:frS:unsigned64 *:(cpu_registers(processor)->fpr + FRS)
45525d8d 791:FRS:FRS_BITMASK:unsigned32:(1 << FRS)
5b4d72dd
MM
802:FRT:FRT::
811:FRT:frT:unsigned64 *:(cpu_registers(processor)->fpr + FRT)
45525d8d 821:FRT:FRT_BITMASK:unsigned32:(1 << FRT)
5b4d72dd
MM
831:SI:EXTS_SI:unsigned_word:((signed_word)(signed16)instruction)
842:BI:BI::
851:BI:BIT32_BI::BIT32(BI)
45525d8d
MM
861:BF:BF::
871:BF:BF_BITMASK:unsigned32:(1 << BF)
5b4d72dd
MM
882:BA:BA::
891:BA:BIT32_BA::BIT32(BA)
45525d8d 901:BA:BA_BITMASK:unsigned32:(1 << BA)
5b4d72dd
MM
912:BB:BB::
921:BB:BIT32_BB::BIT32(BB)
45525d8d
MM
931:BB:BB_BITMASK:unsigned32:(1 << BB)
941:BT:BT::
951:BT:BT_BITMASK:unsigned32:(1 << BT)
5b4d72dd
MM
961:BD:EXTS_BD_0b00:unsigned_word:(((signed_word)(signed16)instruction) & ~3)
97#1:BD:CIA_plus_EXTS_BD_0b00:unsigned_word:CIA + EXTS(BD_0b00)
981:LI:EXTS_LI_0b00:unsigned_word:((((signed_word)(signed32)(instruction << 6)) >> 6) & ~0x3)
991:D:EXTS_D:unsigned_word:((signed_word)(signed16)(instruction))
1001:DS:EXTS_DS_0b00:unsigned_word:(((signed_word)(signed16)instruction) & ~0x3)
This page took 0.045223 seconds and 4 git commands to generate.