LLVM backend for 6502
Go to file
Bob Wilson d4bfd54ec2 Change ARM VFP VLDM/VSTM instructions to use addressing mode #4, just like
all the other LDM/STM instructions.  This fixes asm printer crashes when
compiling with -O0.  I've changed one of the NEON tests (vst3.ll) to run
with -O0 to check this in the future.

Prior to this change VLDM/VSTM used addressing mode #5, but not really.
The offset field was used to hold a count of the number of registers being
loaded or stored, and the AM5 opcode field was expanded to specify the IA
or DB mode, instead of the standard ADD/SUB specifier.  Much of the backend
was not aware of these special cases.  The crashes occured when rewriting
a frameindex caused the AM5 offset field to be changed so that it did not
have a valid submode.  I don't know exactly what changed to expose this now.
Maybe we've never done much with -O0 and NEON.  Regardless, there's no longer
any reason to keep a count of the VLDM/VSTM registers, so we can use
addressing mode #4 and clean things up in a lot of places.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112322 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-27 23:18:17 +00:00
autoconf Remove getsect checks, the result is unused and is broken anyhow. 2010-08-25 08:44:54 +00:00
bindings - Add the LinkerPrivateWeakDefAutoLinkage to the Ada bindings. 2010-08-24 20:00:52 +00:00
cmake Updated CMake library dependencies. Removed unnecessary component name 2010-08-26 02:29:53 +00:00
docs Create the new linker type "linker_private_weak_def_auto". 2010-08-20 22:05:50 +00:00
examples Trailing whitespace. 2010-08-19 20:03:53 +00:00
include Fix a couple of typos. 2010-08-27 21:38:11 +00:00
lib Change ARM VFP VLDM/VSTM instructions to use addressing mode #4, just like 2010-08-27 23:18:17 +00:00
projects
runtime
test Change ARM VFP VLDM/VSTM instructions to use addressing mode #4, just like 2010-08-27 23:18:17 +00:00
tools Fix the msvs 2010 build. 2010-08-27 02:49:45 +00:00
unittests StringRef::compare_numeric also differed from StringRef::compare for characters > 127. 2010-08-26 15:25:35 +00:00
utils Fix a comment typo. 2010-08-27 21:56:59 +00:00
website
build-for-llvm-top.sh
CMakeLists.txt
configure Regenerate. 2010-08-25 08:45:06 +00:00
CREDITS.TXT
LICENSE.TXT
llvm.spec.in
Makefile
Makefile.common
Makefile.config.in
Makefile.rules Fix the "Finished Creating" messages for aliases to print the 2010-08-18 01:35:53 +00:00
ModuleInfo.txt Patch to build llvm with srcdir != objdir from 2009-01-23 08:42:38 +00:00
README.txt (Hopefully) One last test. 2010-07-27 00:04:55 +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.