llvm-project/llvm
Craig Topper 106b5b6856 AMD znver1 Initial Scheduler model
Summary:
This patch adds the following
1. Adds a skeleton scheduler model for AMD Znver1.
2. Introduces the znver1 execution units and pipes.
3. Caters the instructions based on the generic scheduler classes.
4. Further additions to the scheduler model with instruction itineraries will be carried out incrementally based on
        a. Instructions types
        b. Registers used
5. Since itineraries are not added based on instructions, throughput information are bound to change when incremental changes are added.
6. Scheduler testcases are modified accordingly to suit the new model.

Patch by Ganesh Gopalasubramanian. With minor formatting tweaks from me.

Reviewers: craig.topper, RKSimon

Subscribers: javed.absar, shivaram, ddibyend, vprasad

Differential Revision: https://reviews.llvm.org/D35293

llvm-svn: 308411
2017-07-19 02:45:14 +00:00
..
bindings [NFC] Remove multiple semicolons 2017-06-28 23:15:16 +00:00
cmake [Solaris] Detect Solaris LD, use detection results to pass Solaris-ld options 2017-07-12 21:43:14 +00:00
docs fix typos in a document; NFC 2017-07-18 17:52:47 +00:00
examples fix typos in comments and error messges; NFC 2017-07-13 06:48:39 +00:00
include Object: preserve more information about DEF file 2017-07-19 02:01:22 +00:00
lib AMD znver1 Initial Scheduler model 2017-07-19 02:45:14 +00:00
projects
resources
runtimes [CMake] Set toolchain tools in cross-target runtimes build 2017-07-18 20:54:02 +00:00
test AMD znver1 Initial Scheduler model 2017-07-19 02:45:14 +00:00
tools [llvm-readobj] Install llvm-readelf alias 2017-07-19 02:09:37 +00:00
unittests Debug Info: Add a file: field to DIImportedEntity. 2017-07-19 00:09:54 +00:00
utils [AArch64] Extend CallingConv::X86_64_Win64 to AArch64 as well 2017-07-17 20:05:19 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitignore
CMakeLists.txt CMake: Add LLVM_UTILS_INSTALL_DIR option 2017-07-05 12:57:30 +00:00
CODE_OWNERS.TXT Remove the BBVectorize pass. 2017-06-30 07:09:08 +00:00
CREDITS.TXT Another test commit 2017-07-01 03:24:06 +00:00
LICENSE.TXT
LLVMBuild.txt
README.txt
RELEASE_TESTERS.TXT [RelTest] Diana is doing both releases now 2017-07-14 08:33:52 +00:00
configure
llvm.spec.in

README.txt

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

This directory and its subdirectories contain source code for LLVM,
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 documentation provided in docs/ for further
assistance with LLVM, and in particular docs/GettingStarted.rst for getting
started with LLVM and docs/README.txt for an overview of LLVM's
documentation setup.

If you are writing a package for LLVM, see docs/Packaging.rst for our
suggestions.