- Nov 30, 2017
-
-
Krzysztof Parzyszek authored
llvm-svn: 319477
-
Krzysztof Parzyszek authored
llvm-svn: 319476
-
Daniel Sanders authored
No test yet because the relevant rules are blocked on the atomic_load, and atomic_store nodes. llvm-svn: 319475
-
Krzysztof Parzyszek authored
llvm-svn: 319471
-
Krzysztof Parzyszek authored
llvm-svn: 319470
-
Yaxun Liu authored
Differential Revision: https://reviews.llvm.org/D40653 llvm-svn: 319469
-
Craig Topper authored
The 32-bit version is shorter to encode and the zext we emit for the promotion is likely going to be a 32-bit zero extend anyway. llvm-svn: 319468
-
Jake Ehrlich authored
This change adds support for the --only-keep option and the -j alias as well. A common use case for these being used together is to dump a specific section's data. Additionally the --keep option is added (GNU objcopy doesn't have this) to avoid removing a bunch of things. This allows people to err on the side of stripping aggressively and then to keep the specific bits that they need for their application. Differential Revision: https://reviews.llvm.org/D39021 llvm-svn: 319467
-
Daniel Sanders authored
G_ATOMICRMW_* is generally legal on AArch64. The exception is G_ATOMICRMW_NAND. G_ATOMIC_CMPXCHG_WITH_SUCCESS needs to be lowered to G_ATOMIC_CMPXCHG with an external comparison. Note that IRTranslator doesn't generate these instructions yet. llvm-svn: 319466
-
Amara Emerson authored
This fixes PR35358. rdar://35619533 Differential Revision: https://reviews.llvm.org/D40604 llvm-svn: 319465
-
Xinliang David Li authored
Differential Revision: http://reviews.llvm.org/D40662 llvm-svn: 319462
-
Michal Gorny authored
Modify add_sphinx_target() to include the project name alongside builder in Sphinx doctree directory. This aims to avoid crashes due to race conditions between multiple Sphinx instances running in parallel that attempt to create or read that directory simultaneously. This problem has originally been addressed in r283188. However, that commit presumed that there will be only one target per builder being run. However, r314863 introduced a second manpage target, reintroducing the race condition. Differential Revision: https://reviews.llvm.org/D40656 llvm-svn: 319461
-
Daniel Sanders authored
This enables a few rules such as ARM's uxtb instruction. llvm-svn: 319457
-
Zachary Turner authored
llvm-svn: 319456
-
Zachary Turner authored
llvm-svn: 319453
-
Dan Gohman authored
The patch broke Emscripten's EM_ASM macros, which utiltize unprototyped functions. See https://bugs.llvm.org/show_bug.cgi?id=35385 for details. llvm-svn: 319452
-
Francis Visoiu Mistrih authored
llvm-svn: 319447
-
Francis Visoiu Mistrih authored
output As part of the unification of the debug format and the MIR format, always use `printReg` to print all kinds of registers. Updated the tests using '_' instead of '%noreg' until we decide which one we want to be the default one. Differential Revision: https://reviews.llvm.org/D40421 llvm-svn: 319445
-
Igor Laevsky authored
In rare cases we can receive request to inject into completelly empty basic block. In the normal case all basic blocks contain at least terminator instruction, but it is possible that the only instruction is catchpad instruction which is not part of the instruction iterator. This case seems rare enough to not care about it. Submiting without review, since it seems almost NFC. I couldn't come up with any reasonable way to test this. llvm-svn: 319444
-
Igor Laevsky authored
Differential Revision: https://reviews.llvm.org/D40397 llvm-svn: 319442
-
Igor Laevsky authored
Differential Revision: https://reviews.llvm.org/D40396 llvm-svn: 319441
-
Igor Laevsky authored
Differential Revision: https://reviews.llvm.org/D40395 llvm-svn: 319440
-
Igor Laevsky authored
Differential Revision: https://reviews.llvm.org/D40394 llvm-svn: 319439
-
Igor Laevsky authored
Differential Revision: https://reviews.llvm.org/D40393 llvm-svn: 319438
-
Sanjay Patel authored
As noted in D40594, the frem instruction corresponds to fmod() except that it can't set errno. I modified the text that we currently use for intrinsics that map to libm functions and applied it to frem. Differential Revision: https://reviews.llvm.org/D40629 llvm-svn: 319437
-
Alexey Bataev authored
llvm-svn: 319436
-
Nemanja Ivanovic authored
This re-commits everything that was pulled in r314244. The transformation is off by default (patch to enable it to follow). The code is refactored to have a single entry-point and provide fine-grained control over patterns that it selects. This patch also fixes the bugs in the original code. Everything that failed with the original patch has been re-tested with this patch (with the transformation turned on). So the patch to turn this on is soon to follow. Differential Revision: https://reviews.llvm.org/D38575 llvm-svn: 319434
-
Simon Pilgrim authored
llvm-svn: 319433
-
Simon Pilgrim authored
llvm-svn: 319432
-
Sean Eveson authored
Re applying after fixing issues in the diff, sorry for any painful conflicts/merges! Original RFC: http://lists.llvm.org/pipermail/llvm-dev/2017-August/117028.html This change adds a '.stack-size' section containing metadata on function stack sizes to output ELF files behind the new -stack-size-section flag. The section contains pairs of function symbol references (8 byte) and stack sizes (unsigned LEB128). The contents of this section can be used to measure changes to stack sizes between different versions of the compiler or a source base. The advantage of having a section is that we can extract this information when examining binaries that we didn't build, and it allows users and tools easy access to that information just by referencing the binary. There is a follow up change to add an option to clang. Thanks. Reviewers: hfinkel, MatzeB Reviewed By: MatzeB Subscribers: thegameg, asb, llvm-commits Differential Revision: https://reviews.llvm.org/D39788 llvm-svn: 319430
-
Sean Eveson authored
I messed up the diff. llvm-svn: 319429
-
Diana Picus authored
Fallback if we have a byval parameter or argument since we don't support them yet. llvm-svn: 319428
-
Francis Visoiu Mistrih authored
As part of the unification of the debug format and the MIR format, avoid printing "vreg" for virtual registers (which is one of the current MIR possibilities). Basically: * find . \( -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" \) -type f -print0 | xargs -0 sed -i '' -E "s/%vreg([0-9]+)/%\1/g" * grep -nr '%vreg' . and fix if needed * find . \( -name "*.mir" -o -name "*.cpp" -o -name "*.h" -o -name "*.ll" \) -type f -print0 | xargs -0 sed -i '' -E "s/ vreg([0-9]+)/ %\1/g" * grep -nr 'vreg[0-9]\+' . and fix if needed Differential Revision: https://reviews.llvm.org/D40420 llvm-svn: 319427
-
Simon Pilgrim authored
llvm-svn: 319424
-
Sean Eveson authored
Summary: Original RFC: http://lists.llvm.org/pipermail/llvm-dev/2017-August/117028.html I wasn't sure who to put as reviewers, so please add/remove people as appropriate. This change adds a '.stack-size' section containing metadata on function stack sizes to output ELF files behind the new -stack-size-section flag. The section contains pairs of function symbol references (8 byte) and stack sizes (unsigned LEB128). The contents of this section can be used to measure changes to stack sizes between different versions of the compiler or a source base. The advantage of having a section is that we can extract this information when examining binaries that we didn't build, and it allows users and tools easy access to that information just by referencing the binary. There is a follow up change to add an option to clang. Thanks. Reviewers: hfinkel, MatzeB Reviewed By: MatzeB Subscribers: thegameg, asb, llvm-commits Differential Revision: https://reviews.llvm.org/D39788 llvm-svn: 319423
-
Sam Parker authored
visitAND attempts to narrow the width of extending loads that are then masked off. ReduceLoadWidth already exists for a similar purpose and handles shifts, so I've moved the code to handle AND nodes there. Differential Revision: https://reviews.llvm.org/D39595 llvm-svn: 319421
-
Serge Guelton authored
llvm-svn: 319419
-
Simon Pilgrim authored
llvm-svn: 319418
-
Jonas Devlieghere authored
Should fix build failure introduced by r319416 on non-darwin hosts. llvm-svn: 319417
-
Jonas Devlieghere authored
This patch implements `getBundleInfo`, which uses CoreFoundation to obtain information about the CFBundle. This information is needed to populate the Plist in the dSYM bundle. This change only applies to darwin and is an NFC as far as other platforms are concerned. Differential revision: https://reviews.llvm.org/D40244 llvm-svn: 319416
-