| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 147368
|
|
|
|
| |
llvm-svn: 143895
|
|
|
|
|
|
| |
for 64BIT_REXW_XD not existing, but it does exist.
llvm-svn: 141642
|
|
|
|
|
|
| |
from Joe Abbey.
llvm-svn: 141162
|
|
|
|
|
|
| |
instructions. Mark instructions that have this behavior. Fixes PR10676.
llvm-svn: 141065
|
|
|
|
|
|
| |
registers xmm8-xmm15 outside 64-bit mode.
llvm-svn: 140997
|
|
|
|
| |
llvm-svn: 140993
|
|
|
|
|
|
| |
decode as XCHG R8D, EAX instead. Fixes PR10344.
llvm-svn: 140971
|
|
|
|
| |
llvm-svn: 140515
|
|
|
|
|
|
| |
uses the vvvv field to encode an operand. Fixes PR10851.
llvm-svn: 139591
|
|
|
|
| |
llvm-svn: 128826
|
|
|
|
|
|
|
|
|
| |
instruction set. This code adds support for the VEX prefix
and for the YMM registers accessible on AVX-enabled
architectures. Instruction table support that enables AVX
instructions for the disassembler is in an upcoming patch.
llvm-svn: 127644
|
|
|
|
| |
llvm-svn: 126578
|
|
|
|
|
|
|
|
| |
prefix would be misinterpreted in some cases on 32-bit
x86 platforms. Thanks to Olivier Meurant for identifying
the bug.
llvm-svn: 124709
|
|
|
|
|
|
|
|
|
|
| |
clang's -Wuninitialized-experimental warning.
While these don't look like real bugs, clang's
-Wuninitialized-experimental analysis is stricter
than GCC's, and these fixes have the benefit
of being general nice cleanups.
llvm-svn: 124073
|
|
|
|
|
|
| |
Patch by Richard Simth.
llvm-svn: 122962
|
|
|
|
| |
llvm-svn: 117206
|
|
|
|
| |
llvm-svn: 117202
|
|
|
|
|
|
|
|
|
| |
weren't properly reflecting the OperandSize attribute
of the instruction leading to improper decoding of
certain instructions with the 66H prefix. Also added
a test case for this.
llvm-svn: 117084
|
|
|
|
|
|
|
|
|
| |
and %rcr_, leaving just %cr_ which is what people expect.
Updated the disassembler to support this unified register set.
Added a testcase to verify that the registers continue to be
decoded correctly.
llvm-svn: 103196
|
|
|
|
| |
llvm-svn: 101538
|
|
|
|
|
|
|
|
|
| |
argument that had to be between 0 and 7 to have any value,
firing an assert later in the AsmPrinter. Now, the
disassembler rejects instructions with out-of-range values
for that immediate.
llvm-svn: 100694
|
|
|
|
|
|
|
| |
return an error status in all failure cases, printing
messages to debugs() only when debugging is enabled.
llvm-svn: 100229
|
|
|
|
|
|
| |
format a size_t.
llvm-svn: 98819
|
|
|
|
|
|
| |
because the Visual C++ build does not build .c files as C99
llvm-svn: 91935
|
|
|
|
|
|
| |
with symbols in AuroraUX's global namespace.
llvm-svn: 91879
|
|
|
|
| |
llvm-svn: 91878
|
|
|
|
|
|
| |
X86 codegen that were causing circular symbol dependencies.
llvm-svn: 91871
|
|
|
|
| |
llvm-svn: 91778
|
|
|
|
|
|
| |
defines dprintf in stdio.h
llvm-svn: 91775
|
|
|
|
| |
llvm-svn: 91754
|
|
incarnations), integrated into the MC framework.
The disassembler is table-driven, using a custom TableGen backend to
generate hierarchical tables optimized for fast decode. The disassembler
consumes MemoryObjects and produces arrays of MCInsts, adhering to the
abstract base class MCDisassembler (llvm/MC/MCDisassembler.h).
The disassembler is documented in detail in
- lib/Target/X86/Disassembler/X86Disassembler.cpp (disassembler runtime)
- utils/TableGen/DisassemblerEmitter.cpp (table emitter)
You can test the disassembler by running llvm-mc -disassemble for i386
or x86_64 targets. Please let me know if you encounter any problems
with it.
llvm-svn: 91749
|