org.apache.commons.nabla.forward.instructions
Class Dup2X1Transformer
java.lang.Object
org.apache.commons.nabla.forward.instructions.Dup2X1Transformer
- All Implemented Interfaces:
- InstructionsTransformer
public class Dup2X1Transformer
- extends Object
- implements InstructionsTransformer
Differentiation transformer for DUP2_X1 instructions.
DUP2_X1 instructions are replaced by DUP_X1 instructions
as a reference to a DerivativeStructure
instance uses only one stack slot instead of two.
- Version:
- $Id$
Method Summary |
org.objectweb.asm.tree.InsnList |
getReplacement(org.objectweb.asm.tree.AbstractInsnNode insn,
MethodDifferentiator methodDifferentiator)
Get the replacement instructions. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Dup2X1Transformer
public Dup2X1Transformer()
- Simple constructor.
getReplacement
public org.objectweb.asm.tree.InsnList getReplacement(org.objectweb.asm.tree.AbstractInsnNode insn,
MethodDifferentiator methodDifferentiator)
throws DifferentiationException
- Get the replacement instructions.
- Specified by:
getReplacement
in interface InstructionsTransformer
- Parameters:
insn
- original instructionmethodDifferentiator
- method differentiator driving this transformer
- Returns:
- replacement instructions
- Throws:
DifferentiationException
- if the method differentiator cannot provide
a temporary variable
Copyright © 2008-2012 The Apache Software Foundation. All Rights Reserved.