LLVM backend for 6502
Go to file
Benjamin Kramer 3bf15ced2b LegalizeIntegerTypes: Reenable the large shift with small amount optimization.
To avoid problems with zero shifts when getting the bits that move between words
we use a trick: first shift the by amount-1, then do another shift by one. When
amount is 0 (and size 32) we first shift by 31, then by one, instead of by 32.

Also fix a latent bug that emitted the low and high words in the wrong order
when shifting right.

Fixes PR12113.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151637 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28 17:58:00 +00:00
autoconf Strip extraneous information, if present, from the linker version string on 2012-02-28 02:55:41 +00:00
bindings ocaml bindings: landing pad is now the last opcode. 2012-02-07 18:58:19 +00:00
cmake Enable -Wcovered-switch-default as it matches the switch style used in llvm. 2012-02-28 02:01:55 +00:00
docs Update tblgen command guide. Remove unused tblgen InstrEnumEmitter files. 2012-02-27 02:31:09 +00:00
examples Switch to a more idiomatic way of silencing unused variable warnings in 2012-02-20 00:02:49 +00:00
include Revert r151623 "Some ARM implementaions, e.g. A-series, does return stack prediction. ...", it is breaking the Clang build during the Compiler-RT part. 2012-02-28 15:36:07 +00:00
lib LegalizeIntegerTypes: Reenable the large shift with small amount optimization. 2012-02-28 17:58:00 +00:00
projects Enable -Wcovered-switch-default as it matches the switch style used in llvm. 2012-02-28 02:01:55 +00:00
runtime Fixing a warning in MSVC (this is also a test commit) 2012-02-05 19:43:39 +00:00
test LegalizeIntegerTypes: Reenable the large shift with small amount optimization. 2012-02-28 17:58:00 +00:00
tools [Object] Add {begin,end}_dynamic_symbols stubs and implementation for ELF. 2012-02-28 00:40:37 +00:00
unittests Fix typos. 2012-02-22 16:01:54 +00:00
utils Convert generated intrinsic attributes to use an array lookup as Chris suggested in PR11951. 2012-02-28 06:32:00 +00:00
.gitignore
CMakeLists.txt add LLVM_VERSION_MAJOR and _MINOR defines 2012-02-13 18:48:10 +00:00
configure Strip extraneous information, if present, from the linker version string on 2012-02-28 02:55:41 +00:00
CREDITS.TXT Update credits. 2012-02-16 18:54:41 +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
Makefile Makefile: add missing files to FilesToConfig 2012-01-17 02:56:49 +00:00
Makefile.common
Makefile.config.in Enable -Wcovered-switch-default as it matches the switch style used in llvm. 2012-02-28 02:01:55 +00:00
Makefile.rules Enable -Wcovered-switch-default as it matches the switch style used in llvm. 2012-02-28 02:01:55 +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.