summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* [OPENMP] Initial support for 'depend' clause (4.0).Alexey Bataev2015-06-2320-19/+397
| | | | | | Parsing and sema analysis (without support for array sections in arguments) for 'depend' clause (used in 'task' directive, OpenMP 4.0). llvm-svn: 240409
* Remove unused arguments and move ManglerPrefixTy to the implementation.Rafael Espindola2015-06-232-25/+27
| | | | llvm-svn: 240408
* [mips] [IAS] Add support for generating DADDu to createAddu(). NFC.Toma Tabacu2015-06-231-7/+7
| | | | | | | | | | | | | | Summary: This isn't used right now, but it will be in some upcoming changes. Reviewers: dsanders Reviewed By: dsanders Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D10568 llvm-svn: 240407
* Update for LLVM api change.Rafael Espindola2015-06-232-4/+6
| | | | llvm-svn: 240406
* Simplify the Mangler interface now that DataLayout is mandatory.Rafael Espindola2015-06-2319-71/+51
| | | | | | | We only need to pass in a DataLayout when mangling a raw string, not when constructing the mangler. llvm-svn: 240405
* [mips64] Emit correct addend for some PC-relative relocationsPetar Jovanovic2015-06-238-79/+76
| | | | | | | | | | | So far, LLVM has not emitted correct addend for N64 and N32 ABI. This patch fixes that. It also removes fixup from MCJIT for R_MIPS_PC16 relocation. Patch by Vladimir Radosavljevic. Differential Revision: http://reviews.llvm.org/D10565 llvm-svn: 240404
* [Hexagon] Use MF reference from parent class in HexagonPacketizerListKrzysztof Parzyszek2015-06-231-10/+7
| | | | llvm-svn: 240403
* Moving r215806, r215807, and r215808 into AttrDocs.td. These changes were ↵Aaron Ballman2015-06-231-0/+5
| | | | | | originally applied to the RST file that is automatically generated by the server, and so the changes were never properly reflected online once the server overwrote AttributeReference.rst. llvm-svn: 240402
* Fixing a build bot break from r240400.Aaron Ballman2015-06-231-2/+3
| | | | llvm-svn: 240401
* Clarify pointer ownership semantics by hoisting the std::unique_ptr creation ↵Aaron Ballman2015-06-2344-271/+244
| | | | | | to the caller instead of hiding it in emitReport. NFC. llvm-svn: 240400
* [clang-tidy] Fix false positives in misc-macro-parentheses checkerDaniel Marjamaki2015-06-232-3/+5
| | | | llvm-svn: 240399
* [mips] [IAS] Move some function definitions to MipsTargetStreamer.cpp. NFC.Toma Tabacu2015-06-232-8/+13
| | | | | | | | | | | | | | Summary: For the sake of consistency and to make some upcoming changes a little less noisy. Reviewers: dsanders Reviewed By: dsanders Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D10639 llvm-svn: 240398
* Add handling of async notify packetsEwan Crawford2015-06-234-53/+186
| | | | | | | | | | | | | | | | This patch adds a listener to the AynscThread in ProcessGDBRemote, specifically for dealing with any async notification packets. From the broadcast our listener receives we can process the notify packet from the event data. A handler function then sets the thread stop info from this packet, and updates lldb by setting the process private state to stopped. Allowing the async thread to go back to sleep and getting the main thread to handle the implications of a state change. When sending a vCont in nonstop mode we also get a different reply from all-stop mode, an OK response as opposed to a stop reply. So a condition is added to handle this and set the process state without the stop-reply data. Reviewers: clayborg Subscribers: lldb-commits, labath, ted, aidan.dodds, deepak2427 Differential Revision: http://reviews.llvm.org/D10544 llvm-svn: 240397
* Don't repeat names in comments.Rafael Espindola2015-06-231-6/+3
| | | | llvm-svn: 240396
* Use MCSymbols for FastISel.Rafael Espindola2015-06-2312-41/+96
| | | | | | | | | | | The summary is that it moves the mangling earlier and replaces a few calls to .addExternalSymbol with addSym. I originally wanted to replace all the uses of addExternalSymbol with addSym, but noticed it was a lot of work and doesn't need to be done all at once. llvm-svn: 240395
* Revert r240302 ("Bring r240130 back.").Daniel Jasper2015-06-2325-125/+130
| | | | | | | | | | | | | This causes errors like: ld: error: blah.o: requires dynamic R_X86_64_PC32 reloc against '' which may overflow at runtime; recompile with -fPIC blah.cc:function f(): error: undefined reference to '' blah.o:g(): error: undefined reference to '' I have not yet come up with an appropriate reproduction. llvm-svn: 240394
* Revert r240271 (Fixed/added namespace ending comments using clang-tidy. NFC)Alexander Kornienko2015-06-234-4/+4
| | | | llvm-svn: 240393
* [mips] llvm-readobj can parse .MIPS.abiflags. No need to check the bytes.Daniel Sanders2015-06-232-13/+35
| | | | | | | | | | | | | | Summary: Reviewers: atanasyan Reviewed By: atanasyan Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D10538 llvm-svn: 240392
* Fix a warning. [-Wsign-compare]NAKAMURA Takumi2015-06-231-1/+1
| | | | | FIXME: Should "Level" be unsigned? llvm-svn: 240391
* Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC)Alexander Kornienko2015-06-23939-1156/+1156
| | | | | | Apparently, the style needs to be agreed upon first. llvm-svn: 240390
* Silence VC warning C4715: '`anonymous namespace'::getNativeVectorSizeForA ↵Yaron Keren2015-06-231-0/+1
| | | | | | | | VXABI' : not all control paths return a value. llvm-svn: 240389
* Write output file to temp directory. The tests shouldn't assume thatDaniel Jasper2015-06-231-2/+2
| | | | | | they can write to the current working directory. llvm-svn: 240388
* Tweak clang/test/Modules/modules-with-same-name.m to run with GnuWin32's ↵NAKAMURA Takumi2015-06-231-3/+3
| | | | | | | | | find.exe on newer version of Windows. It seems "*.pcm" would be expanded with current directory by NTOS 6.x's msvcrt. GnuWin32 utils are affected. To avoid the issue, put an expression that msvcrt's glob won't match, like "*.pc[m]". llvm-svn: 240387
* AVX-512: Added all forms of VPABS instructionElena Demikhovsky2015-06-2313-89/+742
| | | | | | Added all intrinsics, tests for encoding, tests for intrinsics. llvm-svn: 240386
* MCExpr: Avoid UB by evaluating this shift as unsignedJustin Bogner2015-06-231-1/+1
| | | | | | | | We hit undefined behaviour in some MCExpr tests when the LHS of a left shift is -1. Twos-complement semantics are completely reasonable here, so we should just do the shift in unsigned. llvm-svn: 240385
* [MS ABI] Rework member pointer conversionDavid Majnemer2015-06-236-68/+307
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Member pointers in the MS ABI are made complicated due to the following: - Virtual methods in the most derived class (MDC) might live in a vftable in a virtual base. - There are four different representations of member pointer: single inheritance, multiple inheritance, virtual inheritance and the "most general" representation. - Bases might have a *more* general representation than classes which derived from them, a most surprising result. We believed that we could treat all member pointers as-if they were a degenerate case of the multiple inheritance model. This fell apart once we realized that implementing standard member pointers using this ABI requires referencing members with a non-zero vbindex. On a bright note, all but the virtual inheritance model operate rather similarly. The virtual inheritance member pointer representation awkwardly requires a virtual base adjustment in order to refer to entities in the MDC. However, the first virtual base might be quite far from the start of the virtual base. This means that we must add a negative non-virtual displacement. However, things get even more complicated. The most general representation interprets vbindex zero differently from the virtual inheritance model: it doesn't reference the vbtable at all. It turns out that this complexity can increase for quite some time: consider a derived to base conversion from the most general model to the multiple inheritance model... To manage this complexity we introduce a concept of "normalized" member pointer which allows us to treat all three models as the most general model. Then we try to figure out how to map this generalized member pointer onto the destination member pointer model. I've done my best to furnish the code with comments explaining why each adjustment is performed. This fixes PR23878. llvm-svn: 240384
* [MS ABI] Refactor member pointer generationDavid Majnemer2015-06-231-28/+75
| | | | | | | | | | | | | | | | The MS ABI has very complicated member pointers. Don't attempt to synthesize the final member pointer ab ovo usque ad mala in one go. Instead, start with a member pointer which points to the declaration in question as-if it's decl context was the target class. Then, utilize our conversion logical to convert it to the target type. This allows us to simplify how we think about member pointers because we don't need to consider non-zero nv adjustments before we even generate the member pointer. Furthermore, it gives our adjustment logic more exposure by utilizing it in a common path. llvm-svn: 240383
* [CodeGen] Rename EmitMemberPointer to EmitMemberFunctionPointerDavid Majnemer2015-06-236-11/+12
| | | | llvm-svn: 240382
* [mips] Fix some UB by shifting before sign-extendingJustin Bogner2015-06-231-1/+1
| | | | | | | | Avoid shifting a negative value by sign-extending after the shift. Fixes a couple of tests that were failing under ubsan. llvm-svn: 240381
* test: Move target dependent test in their own folder for c API testJustin Bogner2015-06-234-24/+25
| | | | | | | | | | Dissasembly tests depends on target. The problem is that it disable all tests if all targets are not compiled. This moves things around in order to get target specific code in a target specific folder. Patch by Amaury Sechet. Thanks! llvm-svn: 240380
* [Sanitizers] Pass the correct arch to the symbolizer for x86_64hFrederic Riss2015-06-231-1/+3
| | | | | | | | | | | I have no idea how to directly test that as it depends on a particular (micro-)architecure of the host processor. Combined with llvm's r240339 this should fix issues people might have be seeing intermitently on Darwin haswell machines (the symbolizer would use the wrong slice of the binary, thus potentially resolving to the wrong symbol). llvm-svn: 240379
* Fix PR13851: Preserve metadata for the unswitched branchWeiming Zhao2015-06-232-20/+144
| | | | | | | This patch copies the metadata of the unswitched branch to the newly crreated branch in loop unswitch pass. llvm-svn: 240378
* [OPENMP] Do not emit references to original variables in 'private' clause.Alexey Bataev2015-06-2310-63/+90
| | | | | | | Currently if the variable is captured in captured region, capture record for this region stores reference to this variable for future use. But we don't need to provide the reference to the original variable if it was explicitly marked as private in the 'private' clause of the OpenMP construct, this variable is replaced by private copy. Differential Revision: http://reviews.llvm.org/D9550 llvm-svn: 240377
* Eliminate "enumeration value not handled in switch" warningsDouglas Katzman2015-06-231-0/+2
| | | | | | (Caused by r240370) llvm-svn: 240376
* Remove broken banner.Rafael Espindola2015-06-231-3/+0
| | | | | | Thanks to Filipe Cabecinhas for noticing. llvm-svn: 240375
* Add a test for the previous commit.Rafael Espindola2015-06-231-0/+3
| | | | | | This shows how two symbols at the same address are handled. llvm-svn: 240374
* [LLDB][MIPS] MIPS32 branch emulation and single-steppingJaydeep Patil2015-06-238-112/+2670
| | | | | | | | | | | | | | | SUMMARY: This patch implements 1. Emulation of MIPS32 branch instructions 2. Enable single-stepping for MIPS32 instructions 3. Correction in emulation of MIPS64 branch instructions with delay slot 4. Adjust breakpoint address when breakpoint is hit in a forbidden slot of compact branch instruction Reviewers: clayborg Subscribers: mohit.bhakkad, sagar, bhushan, lldb-commits, emaste, nitesh.jain Differential Revision: http://reviews.llvm.org/D10596 llvm-svn: 240373
* Handle multiple symbols having the same address.Rafael Espindola2015-06-231-1/+9
| | | | | | I will add an explicit test in a second, but this fixes the bots. llvm-svn: 240372
* Revert "Reduced packet counts to the remote GDB server where possible."Chaoren Lin2015-06-2315-1369/+279
| | | | | | | | | | This reverts commit 0cc0745ea9c68d7fdcadc9904cee3f13c96dae60. Due to breakage on Linux build bot: http://lab.llvm.org:8011/builders/lldb-x86_64-ubuntu-14.04-cmake/builds/3436 llvm-svn: 240371
* Change some if/else chains to 'switch' statements. NFCDouglas Katzman2015-06-231-24/+46
| | | | | | Differential Revision: http://reviews.llvm.org/D10612 llvm-svn: 240370
* [InstCombine] Optimize subtract of selects into a select of a subDavid Majnemer2015-06-232-0/+48
| | | | | | | This came up when examining some code generated by clang's IRGen for certain member pointers. llvm-svn: 240369
* Fix tests when X86 is not enabled.Rafael Espindola2015-06-232-0/+2
| | | | llvm-svn: 240368
* Compute correct symbol sizes for MachO and COFF.Rafael Espindola2015-06-232-2/+53
| | | | | | Before this would dump from the symbol start to the end of the section. llvm-svn: 240367
* Extract an utility for computing symbol sizes on MachO and COFF.Rafael Espindola2015-06-234-44/+123
| | | | | | I will add a second user in the next commit. llvm-svn: 240366
* AMDGPU: Use getAsInteger instead of atoiMatt Arsenault2015-06-231-3/+5
| | | | llvm-svn: 240365
* [FaultMaps] Move FaultMapParser to Object/Sanjoy Das2015-06-236-183/+230
| | | | | | | | | | | | | | | | | | Summary: That way llvm-objdump can rely on it without adding an extra dependency on CodeGen. This change duplicates the FaultKind enum and the code that serializes it to a string. I could not figure out a way to get around this without adding a new dependency to Object Reviewers: rafael, ab Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D10619 llvm-svn: 240364
* Fix a typo in a comment in FaultMaps.h. NFC.Sanjoy Das2015-06-231-1/+1
| | | | llvm-svn: 240363
* llvm/tools/llvm-objdump/CMakeLists.txt: Update libdeps to fix r240304.NAKAMURA Takumi2015-06-231-0/+1
| | | | llvm-svn: 240362
* [x86] generalize reassociation optimization in machine combiner to 2 ↵Sanjay Patel2015-06-234-173/+217
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | instructions Currently ( D10321, http://reviews.llvm.org/rL239486 ), we can use the machine combiner pass to reassociate the following sequence to reduce the critical path: A = ? op ? B = A op X C = B op Y --> A = ? op ? B = X op Y C = A op B 'op' is currently limited to x86 AVX scalar FP adds (with fast-math on), but in theory, it could be any associative math/logic op (see TODO in code comment). This patch generalizes the pattern match to ignore the instruction that defines 'A'. So instead of a sequence of 3 adds, we now only need to find 2 dependent adds and decide if it's worth reassociating them. This generalization has a compile-time cost because we can now match more instruction sequences and we rely more heavily on the machine combiner to discard sequences where reassociation doesn't improve the critical path. For example, in the new test case: A = M div N B = A add X C = B add Y We'll match 2 reassociation patterns, but this transform doesn't reduce the critical path: A = M div N B = A add Y C = B add X We need the combiner to reject that pattern but select this: A = M div N B = X add Y C = B add A Differential Revision: http://reviews.llvm.org/D10460 llvm-svn: 240361
* Re-apply "InstrProf: When reading, copy the data instead of taking a ↵Justin Bogner2015-06-223-87/+88
| | | | | | | | | | | | | | reference. NFC" This version fixes a missing include that MSVC noticed and clarifies the ownership of the counter buffer that's passed to InstrProfRecord. This restores r240206, which was reverted in r240208. Patch by Betul Buyukkurt. llvm-svn: 240360
OpenPOWER on IntegriCloud