diff options
author | Lorry Tar Creator <lorry-tar-importer@lorry> | 2017-06-27 06:07:23 +0000 |
---|---|---|
committer | Lorry Tar Creator <lorry-tar-importer@lorry> | 2017-06-27 06:07:23 +0000 |
commit | 1bf1084f2b10c3b47fd1a588d85d21ed0eb41d0c (patch) | |
tree | 46dcd36c86e7fbc6e5df36deb463b33e9967a6f7 /Source/JavaScriptCore/disassembler/X86Disassembler.cpp | |
parent | 32761a6cee1d0dee366b885b7b9c777e67885688 (diff) | |
download | WebKitGtk-tarball-master.tar.gz |
webkitgtk-2.16.5HEADwebkitgtk-2.16.5master
Diffstat (limited to 'Source/JavaScriptCore/disassembler/X86Disassembler.cpp')
-rw-r--r-- | Source/JavaScriptCore/disassembler/X86Disassembler.cpp | 40 |
1 files changed, 5 insertions, 35 deletions
diff --git a/Source/JavaScriptCore/disassembler/X86Disassembler.cpp b/Source/JavaScriptCore/disassembler/X86Disassembler.cpp index 5cce4a93f..247b2274d 100644 --- a/Source/JavaScriptCore/disassembler/X86Disassembler.cpp +++ b/Source/JavaScriptCore/disassembler/X86Disassembler.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2013 Apple Inc. All rights reserved. + * Copyright (C) 2013, 2014 Apple Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -26,49 +26,19 @@ #include "config.h" #include "Disassembler.h" -#if ENABLE(DISASSEMBLER) -#if USE(UDIS86) || USE(LLVM_DISASSEMBLER) +#if USE(UDIS86) #include "MacroAssemblerCodeRef.h" #include "Options.h" #include "UDis86Disassembler.h" -#include "LLVMDisassembler.h" namespace JSC { -// This horrifying monster is needed because neither of our disassemblers supports -// all of x86, and using them together to disassemble the same instruction stream -// would result in a fairly jarring print-out since they print in different -// styles. Maybe we can do better in the future, but for now the caller hints -// whether he's using the subset of the architecture that our MacroAssembler -// supports (in which case we go with UDis86) or if he's using the LLVM subset. - -bool tryToDisassemble(const MacroAssemblerCodePtr& codePtr, size_t size, const char* prefix, PrintStream& out, InstructionSubsetHint subsetHint) +bool tryToDisassemble(const MacroAssemblerCodePtr& codePtr, size_t size, const char* prefix, PrintStream& out) { - if (Options::forceUDis86Disassembler()) - return tryToDisassembleWithUDis86(codePtr, size, prefix, out, subsetHint); - - if (Options::forceLLVMDisassembler()) - return tryToDisassembleWithLLVM(codePtr, size, prefix, out, subsetHint); - - if (subsetHint == MacroAssemblerSubset - && tryToDisassembleWithUDis86(codePtr, size, prefix, out, MacroAssemblerSubset)) - return true; - - if (subsetHint == LLVMSubset - && tryToDisassembleWithLLVM(codePtr, size, prefix, out, LLVMSubset)) - return true; - - if (tryToDisassembleWithUDis86(codePtr, size, prefix, out, subsetHint)) - return true; - if (tryToDisassembleWithLLVM(codePtr, size, prefix, out, subsetHint)) - return true; - - RELEASE_ASSERT_NOT_REACHED(); - return false; + return tryToDisassembleWithUDis86(codePtr, size, prefix, out); } } // namespace JSC -#endif // USE(UDIS86) || USE(LLVM_DISASSEMBLER) -#endif // ENABLE(DISASSEMBLER) +#endif // USE(UDIS86) |