This commit was generated by cvs2svn to track changes on a CVS vendor
[external/binutils.git] / sim / arm / bag.h
1 /*  bag.h -- ARMulator support code:  ARM6 Instruction Emulator.
2     Copyright (C) 1994 Advanced RISC Machines Ltd.
3  
4     This program is free software; you can redistribute it and/or modify
5     it under the terms of the GNU General Public License as published by
6     the Free Software Foundation; either version 2 of the License, or
7     (at your option) any later version.
8  
9     This program is distributed in the hope that it will be useful,
10     but WITHOUT ANY WARRANTY; without even the implied warranty of
11     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12     GNU General Public License for more details.
13  
14     You should have received a copy of the GNU General Public License
15     along with this program; if not, write to the Free Software
16     Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
17
18 /********************************************************************/
19 /* bag.h:                                                           */
20 /* Header file for bag.c                                            */
21 /* Offers a data structure for storing and getting pairs of number. */
22 /* The numbers are stored together, put one can be looked up by     */
23 /* quoting the other.  If a new pair is entered and one of the      */
24 /* numbers is a repeat of a previous pair, then the previos pair    */
25 /* is deleted.                                                      */
26 /********************************************************************/
27
28 typedef enum {
29   NO_ERROR,
30   DELETED_OLD_PAIR,
31   NO_SUCH_PAIR,
32 } Bag_error;
33
34 void BAG_putpair(long first, long second);
35
36 void BAG_newbag(void);
37 Bag_error BAG_killpair_byfirst(long first);
38 Bag_error BAG_killpair_bysecond(long second);
39
40 Bag_error BAG_getfirst(long *first, long second);
41 Bag_error BAG_getsecond(long first, long *second);
42