use of com.ibm.dtfj.image.ImageRegister in project openj9 by eclipse.
the class ImageRegisterComparator method testEquals.
// getName()
// getValue()
public void testEquals(Object ddrObject, Object jextractObject, int members) {
ImageRegister ddrImageRegister = (ImageRegister) ddrObject;
ImageRegister jextractImageRegister = (ImageRegister) jextractObject;
// getName()
if ((NAME & members) != 0)
testJavaEquals(ddrImageRegister, jextractImageRegister, "getName");
// getValue()
if ((VALUE & members) != 0)
testJavaEquals(ddrImageRegister, jextractImageRegister, "getValue");
}
use of com.ibm.dtfj.image.ImageRegister in project openj9 by eclipse.
the class J9DDRImageThread method getRegisters.
/* (non-Javadoc)
* @see com.ibm.dtfj.image.ImageThread#getRegisters()
*/
public Iterator<?> getRegisters() {
Collection<? extends IRegister> registers = thread.getRegisters();
List<ImageRegister> dtfjRegisters = new ArrayList<ImageRegister>(registers.size());
for (IRegister thisRegister : registers) {
dtfjRegisters.add(new J9DDRImageRegister(thisRegister));
}
return dtfjRegisters.iterator();
}
use of com.ibm.dtfj.image.ImageRegister in project openj9 by eclipse.
the class InfoThreadCommand method printRegisters.
public void printRegisters(ImageThread it) {
out.print(" registers:");
out.print("\n");
int count = 0;
Iterator itImageRegister = it.getRegisters();
while (itImageRegister.hasNext()) {
if (count % 4 == 0) {
if (0 != count)
out.print("\n");
out.print(" ");
}
ImageRegister ir = (ImageRegister) itImageRegister.next();
printRegisterInfo(ir);
count++;
}
out.print("\n");
}
use of com.ibm.dtfj.image.ImageRegister in project openj9 by eclipse.
the class ImageProcessBuilder method addImageThread.
/**
* @param Properties with String key and String value
*/
public ImageThread addImageThread(long nativeThreadID, long systemThreadID, Properties properties) throws BuilderFailureException {
try {
ImagePointer pointer = fImageAddressSpace.getPointer(nativeThreadID);
JCImageThread thread = fImageProcess.getImageThread(pointer);
if (thread == null) {
thread = new JCImageThread(pointer);
if (registers != null) {
// Add the registers to the first thread
for (Iterator it = registers.entrySet().iterator(); it.hasNext(); ) {
Map.Entry me = (Map.Entry) it.next();
ImageRegister ir = new JCImageRegister((String) me.getKey(), (Number) me.getValue());
thread.addRegister(ir);
}
registers = null;
}
fImageProcess.addImageThread(thread);
}
for (Iterator it = properties.entrySet().iterator(); it.hasNext(); ) {
Map.Entry me = (Map.Entry) it.next();
thread.addProperty(me.getKey(), me.getValue());
}
if (systemThreadID != IBuilderData.NOT_AVAILABLE) {
pointer = fImageAddressSpace.getPointer(systemThreadID);
thread.setSystemThreadID(pointer);
}
return thread;
} catch (JCInvalidArgumentsException e) {
throw new BuilderFailureException(e);
}
}
Aggregations