1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-18 18:42:46 +02:00
Go to file
Kit Barton 05694fa00a This patch changes the interface to enable the shrink wrapping optimization.
It adds a new constructor, which takes a std::function predicate function that
is run at the beginning of shrink wrapping to determine whether the optimization
should run on the given machine function. The std::function can be overridden by
each target, allowing target-specific decisions to be made on each machine
function.

This is necessary for PowerPC, as the decision to run shrink wrapping is
partially based on the ABI. Futhermore, this operates nicely with the GCC iFunc
capability, which allows option overrides on a per-function basis.

Phabricator: http://reviews.llvm.org/D11421
llvm-svn: 244235
2015-08-06 18:02:53 +00:00
autoconf Temporarily revert r244012 while we see if it's really necessary. 2015-08-05 05:32:22 +00:00
bindings Revert "Fix llvm-config to emit the linker flag for the combined shared object built by autoconfig/make instead of the individual components." 2015-08-05 20:03:26 +00:00
cmake Remove the configure and cmake checks for sys/wait.h 2015-08-04 06:29:58 +00:00
docs docs: Fix typo in Phabricator.rst 2015-08-06 16:57:49 +00:00
examples [PM/AA] Hoist the interface for BasicAA into a header file. 2015-08-06 07:33:15 +00:00
include This patch changes the interface to enable the shrink wrapping optimization. 2015-08-06 18:02:53 +00:00
lib This patch changes the interface to enable the shrink wrapping optimization. 2015-08-06 18:02:53 +00:00
projects build: make libunwind a proper project 2015-04-25 01:47:39 +00:00
resources In MSVC builds embed a VERSIONINFO resource in our exe and DLL files. 2015-06-12 15:58:29 +00:00
test MIR Serialization: Serialize the 'invariant' machine memory operand flag. 2015-08-06 16:55:53 +00:00
tools [llvm-objdump] Add missing call to exit(1). 2015-08-06 00:18:52 +00:00
unittests Fix Visual C++ error C2248: 2015-08-06 07:59:26 +00:00
utils Plug memory leaks in AsmWriterEmitter::EmitPrintAliasInstruction. 2015-08-06 13:18:59 +00:00
.arcconfig Updated phabricator server. 2014-04-07 03:57:04 +00:00
.clang-format Test commit. 2014-03-02 13:08:46 +00:00
.clang-tidy Enable display of compiler diagnostics in clang-tidy by default. 2014-10-29 17:29:38 +00:00
.gitignore Minor updates to gitignore so that symlinks are ignored in the projects dir. 2015-07-07 20:24:58 +00:00
CMakeLists.txt [cmake] Handle Dragonfly BSD like FreeBSD 2015-08-06 17:17:44 +00:00
CODE_OWNERS.TXT [WebAssembly] Initial WebAssembly backend 2015-06-29 23:51:55 +00:00
configure Temporarily revert r244012 while we see if it's really necessary. 2015-08-05 05:32:22 +00:00
CREDITS.TXT [WebAssembly] Initial WebAssembly backend 2015-06-29 23:51:55 +00:00
LICENSE.TXT Update for a new year. 2015-03-12 01:25:29 +00:00
llvm.spec.in
LLVMBuild.txt Remove the very substantial, largely unmaintained legacy PGO 2013-10-02 15:42:23 +00:00
Makefile [configure/make] Propagate names of build host tools when making BuildTools 2014-03-25 21:45:41 +00:00
Makefile.common Makefile.common: Update a description, s/Source/SOURCES/ , according to MakefileGuide.html#control-variables . 2012-12-07 01:43:23 +00:00
Makefile.config.in Rename all references to old mailing lists to new lists.llvm.org address. 2015-08-05 03:51:17 +00:00
Makefile.rules Add support for SunOS function/data sections and associated 2015-03-03 20:54:29 +00:00
README.txt Revert test commit at revision 233535. 2015-03-30 12:39:03 +00:00

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're writing a package for LLVM, see docs/Packaging.rst for our
suggestions.