- May 13, 2016
-
-
Rafael Espindola authored
The first part handles whatever has to be written to the r_offset position. The second part handles creating got and plt entries. llvm-svn: 269375
-
Reid Kleckner authored
Also stop visiting type records when we encounter an error. llvm-svn: 269374
-
Greg Clayton authored
<rdar://problem/26256049> llvm-svn: 269373
-
Greg Clayton authored
The adding of <atomic> to test_common.h broke 12 tests on Darwin. We work around this by not including <atomic> when building on darwin for libstdc++ tests. llvm-svn: 269372
-
Eugene Zelenko authored
Reduce space in empty constructors and between data members and first public section. Fix some Include What You Use warnings. Differential revision: http://reviews.llvm.org/D20213 llvm-svn: 269371
-
Chandler Carruth authored
Ported DA to the new PM by splitting the former DependenceAnalysis Pass into a DependenceInfo result type and DependenceAnalysisWrapperPass type and adding a new PM-style DependenceAnalysis analysis pass returning the DependenceInfo. Patch by Philip Pfaffe, most of the review by Justin. Differential Revision: http://reviews.llvm.org/D18834 llvm-svn: 269370
-
Rafael Espindola authored
llvm-svn: 269369
-
Hemant Kulkarni authored
Dynamic table when printed shows uppercase tag/values. This changes it to lower case when printing in GNU style llvm-svn: 269368
-
Richard Smith authored
Refactor constant expression evaluation of CXXConstructExpr to reduce duplication between array and class initialization. llvm-svn: 269367
-
Cameron Desrochers authored
llvm-svn: 269366
-
Jonathan Peyton authored
This change adds a new entry point, kmp_aligned_malloc(size_t size, size_t alignment), an entry point corresponding to kmp_malloc() but with the capability to return aligned memory as well. Other allocator routines have been adjusted so that kmp_free() can be used for freeing memory blocks allocated by any kmp_*alloc() routine, including the new kmp_aligned_malloc() routine. Differential Revision: http://reviews.llvm.org/D19814 llvm-svn: 269365
-
Justin Bogner authored
- Where we were returning a node before, call ReplaceNode instead. - Where we were calling SelectNodeTo, just return afterwards. Part of llvm.org/pr26808. llvm-svn: 269364
-
Jonathan Peyton authored
After hot teams were enabled by default, the library started using levels kept in the team structure. The levels are broken in case foreign thread exits and puts its team into the pool which is then re-used by another foreign thread. The broken behavior observed is when printing the levels for each new team, one gets 1, 2, 1, 2, 1, 2, etc. This makes the library believe that every other team is nested which is incorrect. What is wanted is for the levels to be 1, 1, 1, etc. Differential Revision: http://reviews.llvm.org/D19980 llvm-svn: 269363
-
Rafael Espindola authored
This is similar to the other changes this function does. With this all Relocations.push_back calls look similar. llvm-svn: 269362
-
Rafael Espindola authored
I will commit again with a fixed commit message. llvm-svn: 269361
-
Rafael Espindola authored
This is similar to the other changes this function does. With this all Relocations.push_back calls look similar. llvm-svn: 269360
-
Rafael Espindola authored
llvm-svn: 269359
-
Justin Bogner authored
- Where we were returning a node before, call ReplaceNode instead. - Where we had already replaced all uses and we returned a node, just remove the dead node instead. - Where we would return null to fall back to another selector, rename the method to try* and return a bool for success. Part of llvm.org/pr26808. llvm-svn: 269358
-
Xinliang David Li authored
Move runtime specific code from the common header file to runtime source. llvm-svn: 269357
-
Adam Nemet authored
llvm-svn: 269356
-
Justin Bogner authored
When we convert to the void Select interface, leaving unreferenced nodes around won't be allowed anymore. Part of llvm.org/pr26808. llvm-svn: 269355
-
Renato Golin authored
This change implements the transformation in processInstruction() for the LDR rt, =expression to MOV rt, expression when the expression can be evaluated and can fit into the immediate field of the MOV or a MVN. Across the ARM and Thumb instruction sets there are several cases to consider, each with a different range of representatble constants. In ARM we have: * Modified immediate (All ARM architectures) * MOVW (v6t2 and above) In Thumb we have: * Modified immediate (v6t2, v7m and v8m.mainline) * MOVW (v6t2, v7m, v8.mainline and v8m.baseline) * Narrow Thumb MOV that can be used in an IT block (non flag-setting) If the immediate fits any of the available alternatives then we make the transformation. Fixes 25722. Patch by Peter Smith. llvm-svn: 269354
-
Renato Golin authored
Alter instances in the test-suite that use immediates that can be represented in the immediate field of a MOV. The reason for doing this is that when the LDR rt,=imm transformation to MOV rt, imm the existing tests do not need to be modified. Required by the patch that fixes PR25722. Patch by Peter Smith. llvm-svn: 269353
-
Renato Golin authored
This change adds a new constant pool kind to ARMOperand. When parsing the operand for =immediate we create an instance of this operand rather than creating a constant pool entry and rewriting the operand. As the new operand kind is only created for ldr rt,= we can make ldr rt,= an explicit pseudo instruction in ARM, Thumb and Thumb2 The pseudo instruction is expanded in processInstruction(). This creates the constant pool and transforms the pseudo instruction into a pc-relative ldr to the constant pool. There are no functional changes and no modifications needed to existing tests. Required by the patch that fixes PR25722. Patch by Peter Smith. llvm-svn: 269352
-
Xinliang David Li authored
llvm-svn: 269351
-
Justin Bogner authored
- Where we were returning a node before, call ReplaceNode instead. - Where we were calling SelectNodeTo, just return afterwards. Part of llvm.org/pr26808. llvm-svn: 269350
-
Justin Bogner authored
- Where we were returning a node before, call ReplaceNode instead. - Where we would return null to fall back to another selector, rename the method to try* and return a bool for success. - Where we were calling SelectNodeTo, just return afterwards. Part of llvm.org/pr26808. llvm-svn: 269349
-
Simon Pilgrim authored
Split FCMP//ICMP/SEL from the basic arithmetic cost functions. They were not sharing any notable code path (just the return) and were repeatedly testing the opcode. llvm-svn: 269348
-
Etienne Bergeron authored
Summary: This patch moves the enum definitions to a definition (.def) file. These modifications provide way to list enumerators of a given type. As an example, this allow parsing of "kinds" in the dynamic matchers. see: http://reviews.llvm.org/D19871 The dynamic matcher "ofKind" also required this patch to be fixed. Reviewers: klimek, aaron.ballman, rsmith Subscribers: klimek, sbenza, alexfh, cfe-commits Differential Revision: http://reviews.llvm.org/D20207 llvm-svn: 269347
-
John Regehr authored
[Docs] clarify semantics of x.with.overflow intrinsics Differential Revision: http://reviews.llvm.org/D20151 llvm-svn: 269346
-
Justin Bogner authored
When we convert to the void Select interface, leaving unreferenced nodes around won't be allowed anymore. Part of llvm.org/pr26808. llvm-svn: 269345
-
Tom Stellard authored
This reverts commit r269016 and also the follow-up commit r269020. This patch caused PR27705. llvm-svn: 269344
-
Johannes Doerfert authored
Before this patch we only expanded valid __and__ profitable region. Therefor we did not allow the expansion to create a profitable region from a non-profitable one. With this patch we will remember and expand all valid regions and check for profitability only at the end. This patch increases the number of valid SCoPs in the LLVM-TS and SPEC 2000/2006 by 28% (from 303 to 390), including the hot loop in hmmer. llvm-svn: 269343
-
Jonathan Coe authored
Summary: This patch adds a check that replaces std::bind with a lambda. Not yet working for member functions. Reviewers: aaron.ballman, alexfh Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D16962 llvm-svn: 269341
-
Marianne Mailhot-Sarrasin authored
This allows expressions such as 'i == 1 || i == 2` to be executed using the IR interpreter, instead of relying on JIT code injection (which may not be available on some platforms). Patch by cameron314 Differential Revision: http://reviews.llvm.org/D19124 llvm-svn: 269340
-
David Blaikie authored
llvm-svn: 269339
-
Hemant Kulkarni authored
llvm-svn: 269338
-
Amjad Aboud authored
32-bit AllRegs: SSE: xmm0-xmm7 AVX: ymm0-ymm7 AVX512: zmm0-zmm7 + k0-k7 64-bit AllRegs: SSE: xmm0-xmm15 AVX: ymm0-ymm15 AVX512: zmm0-zmm31 + k0-k7 Differential Revision: http://reviews.llvm.org/D20142 llvm-svn: 269337
-
Chris Bieneman authored
I was leaking out of a unique_ptr, should have just kept it in the unique_ptr. http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fast/builds/12738/steps/check-llvm%20asan/logs/stdio llvm-svn: 269336
-
Chad Rosier authored
llvm-svn: 269335
-