001/* 002 * This file is part of the Jikes RVM project (http://jikesrvm.org). 003 * 004 * This file is licensed to You under the Eclipse Public License (EPL); 005 * You may not use this file except in compliance with the License. You 006 * may obtain a copy of the License at 007 * 008 * http://www.opensource.org/licenses/eclipse-1.0.php 009 * 010 * See the COPYRIGHT.txt file distributed with this work for information 011 * regarding copyright ownership. 012 */ 013package org.jikesrvm.adaptive.measurements.listeners; 014 015import org.vmmagic.pragma.Uninterruptible; 016import org.vmmagic.unboxed.Address; 017 018/** 019 * This object that is invoked when online measurement information must 020 * be collected. 021 */ 022@Uninterruptible 023public abstract class ContextListener extends Listener { 024 025 /** 026 * This method is called when its time to record that a yield point has occurred. 027 * 028 * @param sfp pointer to stack frame where call stack should start 029 * to be examined. 030 * @param whereFrom Was this a yieldpoint in a PROLOGUE, BACKEDGE, or 031 * EPILOGUE? 032 */ 033 public abstract void update(Address sfp, int whereFrom); 034}