llvm-project/llvm/lib
Sjoerd Meijer 4dbe73c1ed [ARM] Code size optimisation to lower udiv+urem to udiv+mls instead of a
library call to __aeabi_uidivmod. This is an improved implementation of
r280808, see also D24133, that got reverted because isel was stuck in a loop.
That was caused by the optimisation incorrectly triggering on i64 ints, which
shouldn't happen because there is no 64bit hwdiv support; that put isel's type
legalization and this optimisation in a loop. A native ARM compiler and testing
now shows that this is fixed.

Patch mostly by Pablo Barrio.

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

llvm-svn: 283098
2016-10-03 10:12:32 +00:00
..
Analysis [SCEV] Rely on ConstantRange instead of custom logic; NFCI 2016-10-02 20:59:10 +00:00
AsmParser [AsmParser] Remove unused partial template specialization. 2016-09-22 22:02:59 +00:00
Bitcode Use StringRef in Pass/PassManager APIs (NFC) 2016-10-01 02:56:57 +00:00
CodeGen Use StringRef in Registry API (NFC) 2016-10-01 15:44:54 +00:00
DebugInfo Do not pass a superblock to PDBFileBuilder. 2016-09-30 20:52:12 +00:00
Demangle Avoid using alignas and constexpr. 2016-09-06 20:36:24 +00:00
ExecutionEngine Use StringRef instead of raw pointer in ExecutionEngine 2016-10-01 06:22:04 +00:00
Fuzzer [libFuzzer] add fuzzer test for libxml2, finds https://bugzilla.gnome.org/show_bug.cgi?id=751631 2016-10-01 07:37:40 +00:00
IR [ConstantRange] Make getEquivalentICmp smarter 2016-10-02 20:59:05 +00:00
IRReader
LTO Use StringRef in LTOCodegenerator (NFC) 2016-10-01 01:18:23 +00:00
LibDriver Object: Replace NewArchiveIterator with a simpler NewArchiveMember class. NFCI. 2016-06-29 22:27:42 +00:00
LineEditor Fix Clang-tidy modernize-deprecated-headers warnings in some files; other minor fixes. 2016-03-28 17:40:08 +00:00
Linker DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
MC Revert "[MC] Prevent out of order HashDirective lexing in AsmLexer." 2016-10-01 10:57:55 +00:00
Object [Object] Define Archive::isEmpty(). 2016-09-30 17:54:31 +00:00
ObjectYAML [macho2yaml] Don't write empty linkedit data 2016-08-17 21:46:04 +00:00
Option Generalize ArgList::AddAllArgs more 2016-09-29 19:47:58 +00:00
Passes Fix test after renaming -name-anon-functions pass to -name-anon-globals 2016-09-16 17:18:16 +00:00
ProfileData NFC Add const 2016-09-30 21:05:55 +00:00
Support Use StringRef for MemoryBuffer identifier API (NFC) 2016-10-01 16:38:28 +00:00
TableGen Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes. 2016-08-23 17:14:32 +00:00
Target [ARM] Code size optimisation to lower udiv+urem to udiv+mls instead of a 2016-10-03 10:12:32 +00:00
Transforms Remove duplicated code; NFC 2016-10-02 00:09:57 +00:00
CMakeLists.txt Try to fix a circular dependency in the modules build. 2016-09-06 20:16:19 +00:00
LLVMBuild.txt Add an c++ itanium demangler to llvm. 2016-09-06 19:16:48 +00:00