mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2025-10-05 19:42:36 +02:00
GP-0 corrected various test failures
This commit is contained in:
parent
68b9cb54e4
commit
0f3bb2acee
6 changed files with 15 additions and 20 deletions
|
@ -256,7 +256,7 @@ public class DebuggerEmulationServiceTest extends AbstractGhidraHeadedDebuggerGU
|
|||
false);
|
||||
|
||||
// NOTE: qword ptr [0x00600800] is RIP-relative
|
||||
asm.assemble(addrText, "MOV RAX, qword ptr [0x00600800]");
|
||||
asm.assemble(addrText, "MOV RAX, qword ptr [RIP + 0x2007f9]");
|
||||
memory.setLong(addr(program, 0x00600800), 0xdeadbeefcafebabeL);
|
||||
}
|
||||
|
||||
|
|
|
@ -327,7 +327,7 @@ public class BytesTracePcodeEmulatorTest extends AbstractTracePcodeEmulatorTest
|
|||
""",
|
||||
List.of(
|
||||
// First instruction undoes the modification above
|
||||
"XOR byte ptr [0x00400007], 0xcc", // 7 bytes
|
||||
"XOR byte ptr [RIP], 0xcc", // 7 bytes
|
||||
"MOV EAX,0xdeadbeef")); // 5 bytes
|
||||
|
||||
BytesTracePcodeEmulator emu = new BytesTracePcodeEmulator(tb.host, 0);
|
||||
|
@ -600,7 +600,7 @@ public class BytesTracePcodeEmulatorTest extends AbstractTracePcodeEmulatorTest
|
|||
*:8 0x00600000:8 = 0xfedcba9876543210;
|
||||
""",
|
||||
List.of(
|
||||
"MOVAPS XMM0, xmmword ptr [0x00600000]"));
|
||||
"MOVAPS XMM0, xmmword ptr [RIP + 0x1ffff9]"));
|
||||
|
||||
BytesTracePcodeEmulator emu = new BytesTracePcodeEmulator(tb.host, 0);
|
||||
PcodeThread<byte[]> emuThread = emu.newThread(thread.getPath());
|
||||
|
|
|
@ -15,8 +15,7 @@
|
|||
*/
|
||||
package ghidra.pcode.emu.taint.full;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
|
@ -120,7 +119,7 @@ public class TaintDebuggerPcodeEmulatorTest extends AbstractGhidraHeadedDebugger
|
|||
Assembler asm = Assemblers.getAssembler(program);
|
||||
|
||||
// NOTE: qword ptr [0x00400800] is RIP-relative
|
||||
asm.assemble(tb.addr(0x00400000), "MOV RAX, qword ptr [0x00400800]");
|
||||
asm.assemble(tb.addr(0x00400000), "MOV RAX, qword ptr [RIP + 0x7f9]");
|
||||
}
|
||||
|
||||
TraceSchedule time = TraceSchedule.parse("0:t0-1");
|
||||
|
|
|
@ -114,7 +114,7 @@ public abstract class CompositeEditorModel extends CompositeViewerModel implemen
|
|||
|
||||
hadChanges = false;
|
||||
|
||||
if (lastCompositeId != originalCompositeId) {
|
||||
if (originalCompositeId == -1 || lastCompositeId != originalCompositeId) {
|
||||
// only clear the selection if loading a new type
|
||||
setSelection(new FieldSelection());
|
||||
}
|
||||
|
|
|
@ -118,18 +118,15 @@ public class StackEditorModel extends CompositeEditorModel {
|
|||
return false;
|
||||
}
|
||||
StackFrameDataType sfdt = (StackFrameDataType) viewComposite;
|
||||
int editFrameSize = sfdt.getLength();
|
||||
int editReturnAddressOffset = sfdt.getReturnAddressOffset();
|
||||
int editLocalSize = sfdt.getLocalSize();
|
||||
int editParamOffset = sfdt.getParameterOffset();
|
||||
int editParamSize = sfdt.getParameterSize();
|
||||
int stackFrameSize = sfdt.getLength();
|
||||
int stackReturnAddressOffset = sfdt.getReturnAddressOffset();
|
||||
int stackLocalSize = sfdt.getLocalSize();
|
||||
int stackParamOffset = sfdt.getParameterOffset();
|
||||
int stackParamSize = sfdt.getParameterSize();
|
||||
hadChanges = (editFrameSize != stackFrameSize) ||
|
||||
(editReturnAddressOffset != stackReturnAddressOffset) ||
|
||||
int stackReturnAddressOffset = originalStack.getReturnAddressOffset();
|
||||
int stackLocalSize = originalStack.getLocalSize();
|
||||
int stackParamOffset = originalStack.getParameterOffset();
|
||||
int stackParamSize = originalStack.getParameterSize();
|
||||
hadChanges = (editReturnAddressOffset != stackReturnAddressOffset) ||
|
||||
(editLocalSize != stackLocalSize) || (editParamOffset != stackParamOffset) ||
|
||||
(editParamSize != stackParamSize) || super.updateAndCheckChangeState();
|
||||
return hadChanges;
|
||||
|
@ -932,7 +929,7 @@ public class StackEditorModel extends CompositeEditorModel {
|
|||
if (!isValidName() || !hasChanges()) {
|
||||
return false;
|
||||
}
|
||||
StackFrame original = getOriginalStack();
|
||||
StackFrame original = getOriginalStack(); // FIXME: Not Needed - use originalStack
|
||||
Function function = original.getFunction();
|
||||
StackFrameDataType edited = getEditorStack();
|
||||
|
||||
|
|
|
@ -15,8 +15,7 @@
|
|||
*/
|
||||
package ghidra.app.plugin.assembler.sleigh;
|
||||
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.junit.Assert.fail;
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
|
@ -151,8 +150,8 @@ public class x64AssemblyTest extends AbstractAssemblyTest {
|
|||
|
||||
@Test
|
||||
public void testAssemble_CMP_byte_ptr_m0x006dbeefm_0() {
|
||||
assertOneCompatRestExact("CMP byte ptr [0x006dbeef],0", "80:3d:e8:be:6d:c0:00",
|
||||
"CMP byte ptr [0x006dbeef],0x0");
|
||||
assertOneCompatRestExact("CMP byte ptr [RIP + -0x3f924118],0", "80:3d:e8:be:6d:c0:00",
|
||||
"CMP byte ptr [RIP + -0x3f924118],0x0");
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue