LLVM backend for 6502
Go to file
Benjamin Kramer a4c5ecfb1b Shrink the asm matcher tables.
- Shrink the opcode field to 16 bits.
- Shrink the AsmVariantID field to 8 bits.
- Store the mnemonic string in a string table, store a 16 bit index.
- Store a pascal-style length byte in the string instead of a null terminator,
  so we can avoid calling strlen on every entry we visit during mnemonic search.

Shrinks X86AsmParser.o from 434k to 201k on x86_64 and eliminates relocs from the table.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151984 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-03 19:13:26 +00:00
autoconf autoconf: Set LLVM_CONFIGTIME to a stable value when using --disable-timestamps. 2012-03-02 16:24:21 +00:00
bindings ocaml bindings: landing pad is now the last opcode. 2012-02-07 18:58:19 +00:00
cmake Minimal changes for LLVM to compile under VS11. 2012-03-01 22:42:52 +00:00
docs llvm/docs/GarbageCollection.html: Prune utf8 BOM. 2012-03-03 04:32:33 +00:00
examples Switch to a more idiomatic way of silencing unused variable warnings in 2012-02-20 00:02:49 +00:00
include Enable the small vector POD optimization for BitCodeAbbrevOp. 2012-03-03 15:04:13 +00:00
lib Correctly initialize LineSectionSymbol. Thanks to Duncan Sands for noticing it. 2012-03-03 14:24:15 +00:00
projects Enable -Wcovered-switch-default again, but add -Werror to the checks to make 2012-02-28 23:32:06 +00:00
runtime Fixing a warning in MSVC (this is also a test commit) 2012-02-05 19:43:39 +00:00
test Fix RA-dependent test. 2012-03-03 00:26:30 +00:00
tools Fix comments for llvm-readobj, remove extraneous headers 2012-03-02 23:43:51 +00:00
unittests Move the NonPOD struct out of the anonymous namespace instead of adding llvm:: everywhere to fix the HashingTest on MSVC . 2012-03-03 09:39:54 +00:00
utils Shrink the asm matcher tables. 2012-03-03 19:13:26 +00:00
.gitignore git: Add tools/lldb to the ignore list. 2011-11-10 22:55:50 +00:00
CMakeLists.txt add LLVM_VERSION_MAJOR and _MINOR defines 2012-02-13 18:48:10 +00:00
configure autoconf: Set LLVM_CONFIGTIME to a stable value when using --disable-timestamps. 2012-03-02 16:24:21 +00:00
CREDITS.TXT Add myself to the credits file 2012-02-29 16:43:11 +00:00
LICENSE.TXT Happy new year 2012! 2012-01-01 08:16:56 +00:00
llvm.spec.in Tidy up. s/Low Level Virtual Machine/LLVM/. 2012-01-25 22:00:23 +00:00
LLVMBuild.txt LLVMBuild: Introduce a common section which currently has a list of the 2011-12-12 22:45:54 +00:00
Makefile Makefile: add missing files to FilesToConfig 2012-01-17 02:56:49 +00:00
Makefile.common Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00
Makefile.config.in Enable -Wcovered-switch-default again, but add -Werror to the checks to make 2012-02-28 23:32:06 +00:00
Makefile.rules Enable -Wcovered-switch-default again, but add -Werror to the checks to make 2012-02-28 23:32:06 +00:00
README.txt test commit 2012-02-07 08:18:05 +00:00

Low Level Virtual Machine (LLVM)
================================

This directory and its subdirectories contain source code for the Low Level
Virtual Machine, a toolkit for the construction of highly optimized compilers,
optimizers, and runtime environments.

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.

Please see the HTML documentation provided in docs/index.html for further
assistance with LLVM.

If you're writing a package for LLVM, see docs/Packaging.html for our
suggestions.