aa
StartNode.java
Go to the documentation of this file.
1
package
com.cliffc.aa.node;
2
3
import
com
.
cliffc
.
aa
.
GVNGCM
;
4
import
com
.
cliffc
.
aa
.
type
.
Type
;
5
import
com
.
cliffc
.
aa
.
type
.
TypeMem
;
6
import
com
.
cliffc
.
aa
.
type
.
TypeTuple
;
7
8
import
java.util.HashMap;
9
import
java.util.function.Predicate;
10
11
// Program execution start
12
public
class
StartNode
extends
Node
{
13
public
StartNode
() { super(
OP_START
); }
14
@Override
public
Type
value
(
GVNGCM
.
Mode
opt_mode) {
return
TypeTuple
.
START_STATE
; }
15
// TODO: Since new constants can appear at any time, we must assume as bad as
16
// a new constant. A better answer is to make new constants appear with the
17
// same liveness as their users.
18
@Override
public
TypeMem
live
(
GVNGCM
.
Mode
opt_mode) {
return
TypeMem
.
ESCAPE
; }
19
//@Override public TV2 new_tvar(String alloc_site) { return TV2.make("Start",this,alloc_site); }
20
// StartNodes are never equal
21
@Override
public
int
hashCode
() {
return
123456789+1; }
22
@Override
public
boolean
equals
(Object o) {
return
this
==o; }
23
@Override
Node
walk_dom_last
( Predicate<Node> P) {
return
null
; }
24
}
com.cliffc.aa.node.StartNode.walk_dom_last
Node walk_dom_last(Predicate< Node > P)
Definition:
StartNode.java:23
com.cliffc.aa.node.Node.OP_START
static final byte OP_START
Definition:
Node.java:45
com.cliffc.aa.type.TypeMem
Memory type; the state of all of memory; memory edges order memory ops.
Definition:
TypeMem.java:53
com.cliffc
com.cliffc.aa.type.TypeTuple.START_STATE
static final TypeTuple START_STATE
Definition:
TypeTuple.java:129
com.cliffc.aa.node.Node
Definition:
Node.java:16
com.cliffc.aa.type.TypeMem.ESCAPE
static final TypeMem ESCAPE
Definition:
TypeMem.java:227
com.cliffc.aa.type.Type
an implementation of language AA
Definition:
Type.java:94
com.cliffc.aa.type.TypeTuple
Definition:
TypeTuple.java:11
com.cliffc.aa.GVNGCM
Definition:
GVNGCM.java:12
com.cliffc.aa.node.StartNode.StartNode
StartNode()
Definition:
StartNode.java:13
com.cliffc.aa.node.StartNode.equals
boolean equals(Object o)
Definition:
StartNode.java:22
com.cliffc.aa.node.StartNode.live
TypeMem live(GVNGCM.Mode opt_mode)
Definition:
StartNode.java:18
com.cliffc.aa
Definition:
AA.java:1
com.cliffc.aa.node.StartNode.value
Type value(GVNGCM.Mode opt_mode)
Definition:
StartNode.java:14
com.cliffc.aa.node.StartNode
Definition:
StartNode.java:12
com.cliffc.aa.node.StartNode.hashCode
int hashCode()
Definition:
StartNode.java:21
com
com.cliffc.aa.type
Definition:
Bits.java:1
com.cliffc.aa.GVNGCM.Mode
Definition:
GVNGCM.java:14
src
main
java
com
cliffc
aa
node
StartNode.java
Generated by
1.8.18