001
002/*
003 * THIS FILE IS MACHINE_GENERATED. DO NOT EDIT.
004 * See InstructionFormats.template, CommonOperands.dat,
005 * OperatorList.dat, etc.
006 */
007
008package org.jikesrvm.compilers.opt.ir.ppc;
009
010import org.vmmagic.pragma.Pure;
011
012/**
013 * Lookup used to see if an operator is a Location (which is LocationOperand)
014 */
015public final class LocationCarrierLookup {
016  /** Look up table */
017  private static final int[] table = {
018           -1    // Unassigned
019           , -1    // Move
020           , -1    // Return
021           , -1    // Prologue
022           , -1    // InstrumentedCounter
023           , -1    // Empty
024           , -1    // Nullary
025           , -1    // New
026           , -1    // NewArray
027           , -1    // Multianewarray
028           , -1    // Athrow
029           , -1    // MonitorOp
030           , -1    // CacheOp
031           , -1    // NullCheck
032           , -1    // ZeroCheck
033           , -1    // BoundsCheck
034           , -1    // StoreCheck
035           , -1    // TypeCheck
036           , -1    // InstanceOf
037           , -1    // Trap
038           , -1    // TrapIf
039           , -1    // IfCmp
040           , -1    // IfCmp2
041           , -1    // InlineGuard
042           , -1    // BooleanCmp
043           , -1    // CondMove
044           , -1    // Goto
045           , -1    // Label
046           , -1    // BBend
047           , -1    // Unary
048           , -1    // GuardedUnary
049           , -1    // Binary
050           , -1    // GuardedBinary
051           , -1    // GuardedSet
052           , 3    // ALoad
053           , 3    // GetField
054           , 2    // GetStatic
055           , 3    // Load
056           , 3    // AStore
057           , 3    // PutField
058           , 2    // PutStatic
059           , 3    // Store
060           , 3    // Prepare
061           , 5    // Attempt
062           , -1    // Call
063           , -1    // TableSwitch
064           , -1    // LookupSwitch
065           , -1    // LowTableSwitch
066           , -1    // Phi
067           , -1    // OsrBarrier
068           , -1    // OsrPoint
069           , 3    // MIR_Load
070           , 3    // MIR_LoadUpdate
071           , 3    // MIR_Store
072           , 3    // MIR_StoreUpdate
073           , -1    // MIR_CacheOp
074           , -1    // MIR_Move
075           , -1    // MIR_Trap
076           , -1    // MIR_DataInt
077           , -1    // MIR_DataLabel
078           , -1    // MIR_Branch
079           , -1    // MIR_CondBranch
080           , -1    // MIR_CondBranch2
081           , -1    // MIR_Call
082           , -1    // MIR_CondCall
083           , -1    // MIR_Return
084           , -1    // MIR_Empty
085           , -1    // MIR_Nullary
086           , -1    // MIR_Unary
087           , -1    // MIR_Binary
088           , -1    // MIR_Condition
089           , -1    // MIR_Ternary
090           , -1    // MIR_LowTableSwitch
091           , -1    // MIR_RotateAndMask
092        };
093
094  /**
095   * Perform table lookup
096   * @param index the index to lookup
097   * @return the index into the instruction operands that carries the Location
098   *   or -1 if not carried
099   */
100  @Pure
101  public static int lookup(int index) {
102    return table[index];
103  }
104}
105