summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* [FunctionAttrs] Remove a loop, NFC refactorSanjoy Das2015-11-051-16/+14
| | | | | | | | | | | | | | | | | | | | | | Summary: Remove the loop over the uses of the CallSite in ArgumentUsesTracker. Since we have the `Use *` for actual argument operand, we can just use pointer subtraction. The time complexity remains the same though (except for a vararg argument) -- `std::advance` is O(UseIndex) for the ArgumentList iterator. The real motivation is to make a later change adding support for operand bundles simpler. Reviewers: reames, chandlerc, nlewycky Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D14363 llvm-svn: 252141
* AMDGPU: Fix assert when legalizing atomic operandsMatt Arsenault2015-11-054-15/+111
| | | | | | | | | | The operand layout is slightly different for the atomic opcodes from the usual MUBUF loads and stores. This should only fix it on SI/CI. VI is still broken because it still emits the addr64 replacement. llvm-svn: 252140
* AMDGPU: Make addr64 atomic operand order consistentMatt Arsenault2015-11-051-2/+2
| | | | | | | vaddr comes before srsrc in every other MUBUF instruction, and is the order it is printed. llvm-svn: 252139
* Accommodate interface change in r252134.Alexander Kornienko2015-11-051-1/+2
| | | | llvm-svn: 252138
* Fix OSX build after r252118 (missing parameter for findModulesAndOffsets())Mehdi Amini2015-11-051-1/+2
| | | | | From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 252137
* Remove empty linesMehdi Amini2015-11-051-2/+2
| | | | | From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 252136
* [WinEH] Fix establisher param reg in CLR funcletsJoseph Tremoulet2015-11-052-9/+28
| | | | | | | | | | | | | | Summary: The CLR's personality routine passes the pointer to the establisher frame in RCX, not RDX. Reviewers: pgavlin, majnemer, rnk Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D14343 llvm-svn: 252135
* Make ArgumentAdjuster aware of the current file being processed.Alexander Kornienko2015-11-055-12/+12
| | | | | | | | | | | | | | Summary: This is needed to handle per-project configurations when adding extra arguments in clang-tidy for example. Reviewers: klimek, djasper Subscribers: djasper, cfe-commits, klimek Differential Revision: http://reviews.llvm.org/D14191 llvm-svn: 252134
* Fix TestGoFormatters.py.Chaoren Lin2015-11-051-3/+2
| | | | llvm-svn: 252133
* [elf2] Fix R_X86_64_TPOFF32 handling.Michael J. Spencer2015-11-054-6/+11
| | | | | | | | For x86-64 the initial executable TLS block is placed directly before the thread specific data register so compilers can directly access it via R_X86_64_TPOFF32. Generate the correct (negative) offset for this case. llvm-svn: 252131
* [IR] Add bounds checking to dataOperandHasImpliedAttrSanjoy Das2015-11-051-0/+8
| | | | | | This is similar to the bounds check added to paramHasAttr in r252073. llvm-svn: 252130
* Add IRExecutionUnitSP to lldb-forward and use it instead of hand-rolling in ↵Jim Ingham2015-11-053-2/+4
| | | | | | place. llvm-svn: 252129
* TestModuleFileExtension.cpp: Include <cstdio> explicitly for fprintf(3).NAKAMURA Takumi2015-11-051-0/+1
| | | | llvm-svn: 252128
* Python 3 - Don't use `os.path.walk`, it's removed in Py3.Zachary Turner2015-11-051-4/+2
| | | | | | | | It was deprecated even in 2.7, but not removed until 3.x. os.walk provides all of the same functionality and is the correct way to do this now. llvm-svn: 252127
* Python 3 - Use universal_newlines=True in subprocess.Popen.Zachary Turner2015-11-051-0/+2
| | | | | | | | | | | This follows the spirit of a previous patch which did essentially the same thing. In Python 3, when you use Popen.communicate(), you get back a bytes object which cannot normally be treated as a string. We could decode this manually, but universal_newlines=True does this automatically, and there's no disadvantage to doing so even on Python 2. So just enable it always. llvm-svn: 252126
* [modules] Don't merge an anonymous enum definition into a named enum definition.Richard Smith2015-11-052-4/+21
| | | | llvm-svn: 252125
* Fix build on Linux.Chaoren Lin2015-11-051-0/+4
| | | | llvm-svn: 252124
* [libFuzzer] print a bit fewer linesKostya Serebryany2015-11-052-2/+3
| | | | llvm-svn: 252123
* CommandObjectProxy needs to proxy GenerateHelpText as well asJim Ingham2015-11-052-0/+11
| | | | | | | | everything else. <rdar://problem/18383591> llvm-svn: 252122
* [Sanitizer] Use ReportMmapFailureAndDie() in all applicable mmap variants on ↵Alexey Samsonov2015-11-054-16/+12
| | | | | | Posix. llvm-svn: 252121
* Fix build breakDavid Majnemer2015-11-051-2/+1
| | | | llvm-svn: 252120
* Go back to producing relocations for out of range symbols.Rafael Espindola2015-11-053-13/+9
| | | | | | | | This brings back the behavior from before r252090 for out of range symbols. Should bring some arm bots back. llvm-svn: 252119
* [Windows] Symbolize with llvm-symbolizer instead of dbghelp in a self-hostReid Kleckner2015-11-053-97/+227
| | | | | | | | | | | | | | | | Summary: llvm-symbolizer understands both PDBs and DWARF, so it is more likely to succeed at symbolization. If llvm-symbolizer is unavailable, we will fall back to dbghelp. This also makes our crash traces more similar between Windows and Linux. Reviewers: Bigcheese, zturner, chapuni Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D12884 llvm-svn: 252118
* AMDGPU: Add missing v2f64 fadd testsMatt Arsenault2015-11-051-10/+42
| | | | llvm-svn: 252117
* AMDGPU: Fix typoMatt Arsenault2015-11-051-2/+2
| | | | llvm-svn: 252116
* [Lex] Add __has_builtin support for __make_integer_seqDavid Majnemer2015-11-052-1/+11
| | | | | | Differential Revision: http://reviews.llvm.org/D14349 llvm-svn: 252115
* [modules] If we're given a module file, via -fmodule-file=, for a module, butRichard Smith2015-11-055-15/+49
| | | | | | | | | we can't load that file due to a configuration mismatch, and implicit module building is disabled, and the user turns off the error-by-default warning for that situation, then fall back to textual inclusion for the module rather than giving an error if any of its headers are included. llvm-svn: 252114
* [PGO] Use template file to define runtime structuresXinliang David Li2015-11-054-71/+79
| | | | | | | | | | | With this change, instrumentation code and reader/write code related to profile data structs are kept strictly in-sync. THis will be extended to cfe and compile-rt references as well. Differential Revision: http://reviews.llvm.org/D13843 llvm-svn: 252113
* Teach LLDB how to directly launch processes on the iOS simulatorEnrico Granata2015-11-0516-76/+1609
| | | | | | | | This allows for command-line debugging of iOS simulator binaries (as long as UI is not required, or a full UI simulator has previously been otherwise launched), as well as execution of the LLDB test suite on the iOS simulator This is known to compile on OSX 10.11 GM - feedback from people on other platforms and/or older versions of OSX as to the buildability of this code is greatly appreciated llvm-svn: 252112
* LLDB needs a mutex around getopt_long_only() function calls to avoid ↵Jim Ingham2015-11-053-5/+11
| | | | | | | | multi-threading option parsing issues. <rdar://problem/17052381> llvm-svn: 252111
* Fix Abbrev emission in WriteIdentificationBlockMehdi Amini2015-11-051-1/+2
| | | | | | | This Abbrev was not emitted and basically unused, just leacking there. From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 252110
* Add go data formatters.Ryan Brown2015-11-0513-0/+556
| | | | | | Differential Revision: http://reviews.llvm.org/D13878 llvm-svn: 252109
* AddInitialArguments -> AddArguments, and we pass in the struct_address and ↵Jim Ingham2015-11-054-19/+23
| | | | | | | | | push it too. All the callers had to do this by hand and we ended up never actually adding initial arguments and then reusing them by passing in the struct address separately, so the distinction wasn't needed. llvm-svn: 252108
* Fix nullptr crash in -Wthread-safety-betaReid Kleckner2015-11-052-1/+8
| | | | llvm-svn: 252107
* One of the File constructors was missing initializers. Didn't seemJim Ingham2015-11-051-1/+3
| | | | | | to cause any problems, but still... llvm-svn: 252106
* Fix pr24832.Rafael Espindola2015-11-054-11/+16
| | | | | | It is pretty simple now that the yak is shaved. llvm-svn: 252105
* The control expression for a _Generic selection expression should haveAaron Ballman2015-11-052-5/+15
| | | | | | | its type decayed and qualifiers stripped when determining which selection it matches. Fixes PR16340. llvm-svn: 252104
* [TSan] Fix mmap/mmap64 interceptor signature.Alexey Samsonov2015-11-051-4/+4
| | | | | | | mmap() offset argument has type off_t, not unsigned. off_t is usually 64-bit on 64-bit Linux. llvm-svn: 252103
* Simplify now that emitValueToOffset always returns false.Rafael Espindola2015-11-046-24/+8
| | | | llvm-svn: 252102
* Simplify .org processing and make it a bit more powerful.Rafael Espindola2015-11-044-21/+15
| | | | | | | We now always create the fragment, which lets us handle things like .org after a .align. llvm-svn: 252101
* Fix x64 build on Windows, which was broken by my refactor from last week.Adrian McCarthy2015-11-043-1/+212
| | | | | | No build bots build x64 on Windows yet, but this was spotted by another developer who emailed me directly. llvm-svn: 252100
* Define portable macros for packed struct definitions:Xinliang David Li2015-11-041-0/+28
| | | | | | | | | | | | | 1. A macro with argument: LLVM_PACKED(StructDefinition) 2. A pair of macros defining scope of region with packing: LLVM_PACKED_START struct A { ... }; struct B { ... }; LLVM_PACKED_END Differential Revision: http://reviews.llvm.org/D14337 llvm-svn: 252099
* [SimplifyLibCalls] New transformation: tan(atan(x)) -> xDavide Italiano2015-11-044-1/+71
| | | | | | | | | | | | | | | | | | | | This is enabled only under -ffast-math. So, instead of emitting: 4007b0: 50 push %rax 4007b1: e8 8a fd ff ff callq 400540 <atanf@plt> 4007b6: 58 pop %rax 4007b7: e9 94 fd ff ff jmpq 400550 <tanf@plt> 4007bc: 0f 1f 40 00 nopl 0x0(%rax) for: float mytan(float x) { return tanf(atanf(x)); } we emit a single retq. Differential Revision: http://reviews.llvm.org/D14302 llvm-svn: 252098
* [libFuzzer] when choosing the next unit to mutate, give some preference to ↵Kostya Serebryany2015-11-042-26/+46
| | | | | | the most recent units (they are more likely to be interesting) llvm-svn: 252097
* fix typo; NFCSanjay Patel2015-11-041-1/+1
| | | | llvm-svn: 252096
* [CaptureTracking] Support operand bundles conservativelySanjoy Das2015-11-042-2/+32
| | | | | | | | | | | | | | | | | | | | | Summary: Earlier CaptureTracking would assume all "interesting" operands to a call or invoke were its arguments. With operand bundles this is no longer true. Note: an earlier change got `doesNotCapture` working correctly with operand bundles. This change uses DSE to test the changes to CaptureTracking. DSE is a vehicle for testing only, and is not directly involved in this change. Reviewers: reames, majnemer Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D14306 llvm-svn: 252095
* [FreeBSD] Add missing overrides.Davide Italiano2015-11-042-4/+4
| | | | llvm-svn: 252094
* [CMake] Bug 25059 - CMake libllvm.so.$MAJOR.$MINOR shared object name not ↵Chris Bieneman2015-11-042-8/+53
| | | | | | | | | | | | | | | | | | | | | compatible with ldconfig Summary: This change makes the CMake build system generate libraries for Linux and Darwin matching the makefile build system. Linux libraries follow the pattern lib${name}.${MAJOR}.${MINOR}.so so that ldconfig won't pick it up incorrectly. Darwin libraries are not versioned. Note: On linux the non-versioned symlink is generated at install-time not build time. I plan to fix that eventually, but I expect that is good enough for the purposes of fixing this bug. Reviewers: loladiro, tstellarAMD Subscribers: axw, llvm-commits Differential Revision: http://reviews.llvm.org/D13841 llvm-svn: 252093
* Handle keyword args on our patched Popen methods.Zachary Turner2015-11-041-4/+4
| | | | | | | | | | | Python 3 introduces the `timeout` keyword argument on Popen.wait(). If our patched version doesn't support keyword arguments, then when the internal Python implementation attempts to call wait() with the keyword argument, things will explode. Such as my head, after I finally figured out what was happening. llvm-svn: 252092
* Don't access class members inside of `__del__`.Zachary Turner2015-11-041-4/+0
| | | | | | Apparently this doesn't work as the attribute doesn't exist anymore. llvm-svn: 252091
OpenPOWER on IntegriCloud