llvm-project/llvm
Andrew Trick 8523b16ff5 Instruction scheduling itinerary for Intel Atom.
Adds an instruction itinerary to all x86 instructions, giving each a default latency of 1, using the InstrItinClass IIC_DEFAULT.

Sets specific latencies for Atom for the instructions in files X86InstrCMovSetCC.td, X86InstrArithmetic.td, X86InstrControl.td, and X86InstrShiftRotate.td. The Atom latencies for the remainder of the x86 instructions will be set in subsequent patches.

Adds a test to verify that the scheduler is working.

Also changes the scheduling preference to "Hybrid" for i386 Atom, while leaving x86_64 as ILP.

Patch by Preston Gurd!

llvm-svn: 149558
2012-02-01 23:20:51 +00:00
..
autoconf autoconf: generate clang's private config.h header 2012-02-01 14:06:21 +00:00
bindings Tidy up. s/Low Level Virtual Machine/LLVM/. 2012-01-25 22:00:23 +00:00
cmake CMake: Add the folder "Tablegenning" on llvm-tblgen targets. 2012-01-30 03:01:03 +00:00
docs Add a basic-block autovectorization pass. 2012-02-01 03:51:43 +00:00
examples Fix BrainF compilation. 2012-01-31 09:35:01 +00:00
include Specify SubRegIndex components on the index itself. 2012-02-01 23:16:41 +00:00
lib Instruction scheduling itinerary for Intel Atom. 2012-02-01 23:20:51 +00:00
projects Regenerate configure. 2012-01-31 17:18:47 +00:00
runtime LLVMBuild: Remove trailing newline, which irked me. 2011-12-12 19:48:00 +00:00
test Instruction scheduling itinerary for Intel Atom. 2012-02-01 23:20:51 +00:00
tools SwitchInst refactoring. 2012-02-01 07:49:51 +00:00
unittests RefCountedBaseVPTR needs the IntrusiveRefCntPtrInfo as friend, 2012-01-31 19:58:34 +00:00
utils Specify SubRegIndex components on the index itself. 2012-02-01 23:16:41 +00:00
.gitignore git: Add tools/lldb to the ignore list. 2011-11-10 22:55:50 +00:00
CMakeLists.txt cmake: make BUILD_SHARED_LIBS a visible option 2012-02-01 14:49:39 +00:00
CREDITS.TXT CREDITS.TXT: Add a line. (test commit) 2011-10-29 23:42:14 +00:00
LICENSE.TXT Happy new year 2012! 2012-01-01 08:16:56 +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
Makefile.config.in capitalize project name, reference bugzilla 2011-12-18 18:50:16 +00:00
Makefile.rules PR11642 has been fixed, enable -fvisibility-inlines-hidden everywhere. 2011-12-27 21:37:11 +00:00
README.txt Revert test commit 2012-01-31 23:18:33 +00:00
configure autoconf: generate clang's private config.h header 2012-02-01 14:06:21 +00:00
llvm.spec.in Tidy up. s/Low Level Virtual Machine/LLVM/. 2012-01-25 22:00:23 +00:00

README.txt

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.