Go to the documentation of this file. 1 package com.cliffc.aa.node;
7 import org.jetbrains.annotations.NotNull;
43 private void _init(
int alias, T ts) {
49 @Override
public String
xstr() {
return "New"+
"*"+
_alias; }
57 public final void sets( T ts ) {
117 if(
_keep > 0 )
return false;
118 if(
_uses._len==0 )
return false;
121 if(
_uses._len==1 ) {
134 if( !(use instanceof
IfNode) )
142 @SuppressWarnings(
"unchecked")
157 @Override
public boolean equals(Object o) {
return this==o; }
176 super(op,parent_alias,to);
200 assert
in(0)==
null &&
_uses._len==0;
209 for(
int i=ARG_IDX; i<
_sig.
nargs(); i++ )
static final TypeMem DEAD
static TypeTuple make_args(Type[] ts)
Memory type; the state of all of memory; memory edges order memory ops.
void add_flow_uses(Node n)
static Ary< NewPrimNode > INTRINSICS()
static final TypeMem ESCAPE
an implementation of language AA
static TypeFunSig make(String[] args, TypeTuple formals, TypeTuple ret)
void revalive(Node... ns)
static void add_libs(Ary< NewPrimNode > INTRINSICS)
NewNode copy(boolean copy_edges)
static final TypeMem ALLMEM
Type value(GVNGCM.Mode opt_mode)
static int new_alias(int par)
void add_flow_def_extra(Node chg)
FunPtrNode as_fun(GVNGCM gvn)
TypeMem live_use(GVNGCM.Mode opt_mode, Node def)
static int def_idx(int fld)
static final Ary< NewPrimNode > INTRINSICS
static final TypeTuple RET
static ProjNode proj(Node head, int idx)
void _init(int alias, T ts)
static final TypeObj UNUSED
static final TypeObj ISUSED
static TypeTuple make(boolean any, Type[] ts)
NewNode(byte type, int par_alias, T to)
an implementation of language AA
static BitsAlias make0(int bit)
static void add_libs(Ary< NewPrimNode > INTRINSICS)
public< N extends Node > N add_reduce(N n)
NewNode(byte type, int alias, T to, Node fld)
public< N extends Node > N add_flow(N n)
abstract TypeObj valueobj()
NewPrimNode(byte op, int parent_alias, T to, String name, boolean reads, int op_prec, Type... args)
static TypeMemPtr make(BitsAlias aliases, TypeObj obj)