diff options
Diffstat (limited to 'deps/v8/test/cctest/test-disasm-x87.cc')
-rw-r--r-- | deps/v8/test/cctest/test-disasm-x87.cc | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/deps/v8/test/cctest/test-disasm-x87.cc b/deps/v8/test/cctest/test-disasm-x87.cc index 697a9d3b49..41f425da3c 100644 --- a/deps/v8/test/cctest/test-disasm-x87.cc +++ b/deps/v8/test/cctest/test-disasm-x87.cc @@ -29,10 +29,10 @@ #include "src/v8.h" +#include "src/code-factory.h" #include "src/debug/debug.h" #include "src/disasm.h" #include "src/disassembler.h" -#include "src/ic/ic.h" #include "src/macro-assembler.h" #include "src/x87/frames-x87.h" #include "test/cctest/cctest.h" @@ -290,7 +290,7 @@ TEST(DisasmIa320) { __ bind(&L2); __ call(Operand(ebx, ecx, times_4, 10000)); __ nop(); - Handle<Code> ic(LoadIC::initialize_stub(isolate, NOT_INSIDE_TYPEOF)); + Handle<Code> ic(CodeFactory::LoadIC(isolate).code()); __ call(ic, RelocInfo::CODE_TARGET); __ nop(); __ call(FUNCTION_ADDR(DummyStaticFunction), RelocInfo::RUNTIME_ENTRY); @@ -395,12 +395,30 @@ TEST(DisasmIa320) { // xchg. { + __ xchg_b(eax, Operand(eax, 8)); + __ xchg_w(eax, Operand(ebx, 8)); __ xchg(eax, eax); __ xchg(eax, ebx); __ xchg(ebx, ebx); __ xchg(ebx, Operand(esp, 12)); } + // cmpxchg. + { + __ cmpxchg_b(Operand(esp, 12), eax); + __ cmpxchg_w(Operand(ebx, ecx, times_4, 10000), eax); + __ cmpxchg(Operand(ebx, ecx, times_4, 10000), eax); + } + + // lock prefix. + { + __ lock(); + __ cmpxchg(Operand(esp, 12), ebx); + + __ lock(); + __ xchg_w(eax, Operand(ecx, 8)); + } + // Nop instructions for (int i = 0; i < 16; i++) { __ Nop(i); |