2
* Copyright (c) 2001 Stefan Kral
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.
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.
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
21
type k7rflag = K7RFlag_Zero
23
K7ROp_MMXReg of K7Basics.k7rmmxreg
24
| K7ROp_IntReg of K7Basics.k7rintreg
25
| K7ROp_MemOp of K7Basics.k7memop
27
| K7ROp_Flag of k7rflag
33
val mmxstackcell : int -> k7rop
40
val add : key -> 'a -> 'a t -> 'a t
41
val find : key -> 'a t -> 'a
42
val remove : key -> 'a t -> 'a t
43
val mem : key -> 'a t -> bool
44
val iter : (key -> 'a -> unit) -> 'a t -> unit
45
val map : ('a -> 'b) -> 'a t -> 'b t
46
val mapi : (key -> 'a -> 'b) -> 'a t -> 'b t
47
val fold : (key -> 'a -> 'b -> 'b) -> 'a t -> 'b -> 'b
50
val resmap_findE : ResMap.key -> 'a list ResMap.t -> 'a list
51
val resmap_addE : ResMap.key -> 'a -> 'a list ResMap.t -> 'a list ResMap.t
52
val resmap_addE' : 'a -> ResMap.key -> 'a list ResMap.t -> 'a list ResMap.t
53
val resmap_find : ResMap.key -> 'a ResMap.t -> 'a option
55
val raddrToRops : K7Basics.k7raddr -> k7rop list
56
val intuopToSrcrops : k7rop -> K7Basics.k7intunaryop -> k7rop list
57
val intcpyuopToSrcrops : K7Basics.k7intcpyunaryop -> 'a list
58
val branchconditionToSrcrops : K7Basics.k7branchcondition -> k7rop list
59
val simduopToSrcrops : 'a -> K7Basics.k7simdunaryop -> 'a list
60
val simdcpyuopToSrcrops : K7Basics.k7simdcpyunaryop -> 'a list
61
val rinstrToSrcrops' : K7Basics.k7rinstr -> k7rop list
62
val intuopToDstrops : k7rop -> K7Basics.k7intunaryop -> (k7rop * int) list
63
val intcpyuopToDstrops : 'a -> K7Basics.k7intcpyunaryop -> ('a * int) list
65
val simduopToLatency : K7Basics.k7simdunaryop -> int
66
val simdbopToLatency : K7Basics.k7simdbinop -> int
68
val k7rinstrToSrck7rops : K7Basics.k7rinstr -> k7rop list
69
val k7rinstrToDstk7rops : K7Basics.k7rinstr -> (k7rop * int) list
71
val k7rinstrToMaxlatency : K7Basics.k7rinstr -> int
73
val k7rinstrCannotRollOverK7rinstr :
74
K7Basics.k7rinstr -> K7Basics.k7rinstr -> bool