- Aug 12, 2016
-
-
Hans Wennborg authored
------------------------------------------------------------------------ r278387 | marshall | 2016-08-11 11:46:24 -0700 (Thu, 11 Aug 2016) | 1 line Remove test for the sign of a NaN - doesn't work on MIPS, not strictly legal. Fixes bug 28936 ------------------------------------------------------------------------ llvm-svn: 278425
-
Hans Wennborg authored
------------------------------------------------------------------------ r278413 | gberry | 2016-08-11 14:05:17 -0700 (Thu, 11 Aug 2016) | 17 lines [SCEV] Update interface to handle SCEVExpander insert point motion. Summary: This is an extension of the fix in r271424. That fix dealt with builder insert points being moved by SCEV expansion, but only for the lifetime of the expand call. This change modifies the interface so that LSR can safely call expand multiple times at the same insert point and do the right thing if one of the expansions decides to move the original insert point. This is a fix for PR28719. Reviewers: sanjoy Subscribers: llvm-commits, mcrosier, mzolotukhin Differential Revision: https://reviews.llvm.org/D23342 ------------------------------------------------------------------------ llvm-svn: 278424
-
Hans Wennborg authored
------------------------------------------------------------------------ r278370 | mkuper | 2016-08-11 10:38:33 -0700 (Thu, 11 Aug 2016) | 7 lines Make TwoAddressInstructionPass::rescheduleMIBelowKill subreg-aware This fixes PR28824. Differential Revision: https://reviews.llvm.org/D23220 ------------------------------------------------------------------------ llvm-svn: 278422
-
Hans Wennborg authored
------------------------------------------------------------------------ r277522 | dcoughlin | 2016-08-02 14:07:23 -0700 (Tue, 02 Aug 2016) | 8 lines [CFG] Fix crash finding destructor of lifetime-extended temporary. Fix a crash under -Wthread-safety when finding the destructor for a lifetime-extending reference. A patch by Nandor Licker! Differential Revision: https://reviews.llvm.org/D22419 ------------------------------------------------------------------------ llvm-svn: 278376
-
Hans Wennborg authored
------------------------------------------------------------------------ r276900 | epilk | 2016-07-27 11:25:10 -0700 (Wed, 27 Jul 2016) | 5 lines [Sema] Teach getCurrentThisType to reconize lambda in in-class initializer Fixes PR27994, a crash on valid. Differential revision: https://reviews.llvm.org/D21145 ------------------------------------------------------------------------ llvm-svn: 278374
-
- Aug 11, 2016
-
-
Hans Wennborg authored
------------------------------------------------------------------------ r276712 | eugenis | 2016-07-25 17:05:14 -0700 (Mon, 25 Jul 2016) | 3 lines [safestack] Fix stack guard live range. Stack guard slot is live throughout the function. ------------------------------------------------------------------------ llvm-svn: 278283
-
Hans Wennborg authored
------------------------------------------------------------------------ r276676 | eugenis | 2016-07-25 12:25:40 -0700 (Mon, 25 Jul 2016) | 1 line Fix invalid iterator use in safestack coloring. ------------------------------------------------------------------------ llvm-svn: 278281
-
Hans Wennborg authored
------------------------------------------------------------------------ r278234 | joey | 2016-08-10 08:57:02 -0700 (Wed, 10 Aug 2016) | 5 lines [OpenCL] Change block descriptor address space to constant. The block descriptor is a GlobalVariable in the LLVM IR, so it shouldn't be in the private address space. ------------------------------------------------------------------------ ------------------------------------------------------------------------ r278235 | joey | 2016-08-10 09:04:14 -0700 (Wed, 10 Aug 2016) | 2 lines [OpenCL] Fix typo in test that I accidentally introduced in my previous commit. ------------------------------------------------------------------------ llvm-svn: 278248
-
Hans Wennborg authored
------------------------------------------------------------------------ r276051 | arsenm | 2016-07-19 16:16:53 -0700 (Tue, 19 Jul 2016) | 8 lines AMDGPU: Change fdiv lowering based on !fpmath metadata If 2.5 ulp is acceptable, denormals are not required, and isn't a reciprocal which will already be handled, replace with a faster fdiv. Simplify the lowering tests by using per function subtarget features. ------------------------------------------------------------------------ ------------------------------------------------------------------------ r276823 | arsenm | 2016-07-26 16:25:44 -0700 (Tue, 26 Jul 2016) | 4 lines AMDGPU: Use rcp for fdiv 1, x with fpmath metadata Using rcp should be OK for safe math usually, so this should not be replacing the original fdiv. ------------------------------------------------------------------------ llvm-svn: 278243
-
Hans Wennborg authored
------------------------------------------------------------------------ r278139 | rnk | 2016-08-09 10:23:56 -0700 (Tue, 09 Aug 2016) | 6 lines [clang-cl] Make -gline-tables-only imply -gcodeview It's surprising that you have to pass /Z7 in addition to -gcodeview to get debug info. The sanitizer runtime, for example, expects that if the compiler supports the -gline-tables-only flag, then it will emit debug info. ------------------------------------------------------------------------ llvm-svn: 278240
-
Hans Wennborg authored
------------------------------------------------------------------------ r278002 | sbaranga | 2016-08-08 06:13:57 -0700 (Mon, 08 Aug 2016) | 18 lines [AArch64] PR28877: Don't assume we're running after legalization when creating vcvtfp2fxs Summary: The DAG combine transformation that was generating the aarch64_neon_vcvtfp2fxs node was assuming that all inputs where legal and wasn't accounting that the input could be a v4f64 if we're trying to do the transformation before legalization. We now bail out in this case. All illegal types besides v4f64 were already rejected. Fixes https://llvm.org/bugs/show_bug.cgi?id=28877. Reviewers: jmolloy Subscribers: aemerson, rengolin, llvm-commits Differential Revision: https://reviews.llvm.org/D23261 ------------------------------------------------------------------------ llvm-svn: 278239
-
- Aug 10, 2016
-
-
Devin Coughlin authored
llvm-svn: 278175
-
Hans Wennborg authored
llvm-svn: 278167
-
Hans Wennborg authored
------------------------------------------------------------------------ r278133 | hans | 2016-08-09 09:46:02 -0700 (Tue, 09 Aug 2016) | 3 lines test-release.sh: Drop autoconf support The autoconf build was deleted some time ago. ------------------------------------------------------------------------ llvm-svn: 278134
-
- Aug 09, 2016
-
-
Hans Wennborg authored
------------------------------------------------------------------------ r278086 | matze | 2016-08-08 18:47:26 -0700 (Mon, 08 Aug 2016) | 6 lines X86InstrInfo: Update liveness in classifyLea() We need to update liveness information when we create COPYs in classifyLea(). This fixes http://llvm.org/28301 ------------------------------------------------------------------------ llvm-svn: 278128
-
Hans Wennborg authored
------------------------------------------------------------------------ r278036 | dim | 2016-08-08 11:34:05 -0700 (Mon, 08 Aug 2016) | 18 lines Fix linking of omp_foreign_thread_team_reuse test on FreeBSD Summary: On FreeBSD, linking the misc_bugs/omp_foreign_thread_team_reuse.c test case fails with: /usr/local/bin/ld: /tmp/omp_foreign_thread_team_reuse-c5e71b.o: undefined reference to symbol 'pthread_create@@FBSD_1.0' This is because the program is linked without `-lpthread`. Since the %libomp-compile-and-run macro does not allow that option to be added to the compile command line, split it up and add the required `-lpthread` between %libomp-compile and %libomp-run. Reviewers: jlpeyton, hfinkel, Hahnfeld Subscribers: Hahnfeld, emaste, openmp-commits Differential Revision: https://reviews.llvm.org/D23084 ------------------------------------------------------------------------ llvm-svn: 278059
-
Hans Wennborg authored
------------------------------------------------------------------------ r277426 | nitesh.jain | 2016-08-02 00:18:07 -0700 (Tue, 02 Aug 2016) | 7 lines [LLVM][MIPS] Add (D)SUBU, (D)ADDU, LUI instructions emulation . Fix emulation for (D)ADDIU, SD/SW and LW/LD instructions Reviewers: clayborg, jaydeep, bhushan Subscribers: mohit.bhakkad, slthakur, sdardis, lldb-commits Differential Revision: https://reviews.llvm.org/D20357 ------------------------------------------------------------------------ llvm-svn: 278047
-
Hans Wennborg authored
------------------------------------------------------------------------ r277343 | nitesh.jain | 2016-08-01 06:45:51 -0700 (Mon, 01 Aug 2016) | 7 lines [LLVM][MIPS] Fix FPU Size Based on Dynamic FR. Reviewers: jingham, clayborg Subscribers: jaydeep, bhushan, mohit.bhakkad, slthakur, lldb-commits, emaste, nemanjai, labath, sdardis Differential Revision: https://reviews.llvm.org/D20357 ------------------------------------------------------------------------ llvm-svn: 278046
-
Kai Nacke authored
llvm-svn: 278045
-
Hans Wennborg authored
------------------------------------------------------------------------ r278030 | eugenezelenko | 2016-08-08 10:59:02 -0700 (Mon, 08 Aug 2016) | 4 lines CMakeLists.txt cleanups: synchronize version with rest of LLVM, consistent spacing. Differential revision: https://reviews.llvm.org/D23092 ------------------------------------------------------------------------ llvm-svn: 278044
-
Hans Wennborg authored
------------------------------------------------------------------------ r278029 | eugenezelenko | 2016-08-08 10:56:28 -0700 (Mon, 08 Aug 2016) | 4 lines CMakeLists.txt cleanups: synchronize version and CMake minimum required version with rest of LLVM, consistent spacing. Differential revision: https://reviews.llvm.org/D23094 ------------------------------------------------------------------------ llvm-svn: 278043
-
Hans Wennborg authored
------------------------------------------------------------------------ r277868 | compnerd | 2016-08-05 14:35:28 -0700 (Fri, 05 Aug 2016) | 4 lines unwind: disable executable stacks Similar to compiler-rt, ensure that we disable executable stacks for the custom assembly. ------------------------------------------------------------------------ llvm-svn: 278023
-
Hans Wennborg authored
------------------------------------------------------------------------ r277796 | rtrieu | 2016-08-04 19:39:30 -0700 (Thu, 04 Aug 2016) | 6 lines Allow -1 to assign max value to unsigned bitfields. Silence the -Wbitfield-constant-conversion warning for when -1 or other negative values are assigned to unsigned bitfields, provided that the bitfield is wider than the minimum number of bits needed to encode the negative value. ------------------------------------------------------------------------ ------------------------------------------------------------------------ r277797 | rtrieu | 2016-08-04 20:16:36 -0700 (Thu, 04 Aug 2016) | 7 lines Fix crash in template type diffing. When the type being diffed is a type alias, and the orginal type is not a templated type, then there will be no unsugared TemplateSpecializationType. When this happens, exit early from the constructor. Also add assertions to the other iterator accessor to prevent the iterator from being used. ------------------------------------------------------------------------ ------------------------------------------------------------------------ r277866 | rtrieu | 2016-08-05 14:02:34 -0700 (Fri, 05 Aug 2016) | 12 lines Fix false positive in -Wunsequenced and templates. For builtin logical operators, there is a well-defined ordering of argument evaluation. For overloaded operator of the same type, there is no argument evaluation order, similar to other function calls. When both are present, uninstantiated templates with an operator&& is treated as an unresolved function call. Unresolved function calls are treated as normal function calls, and may result in false positives when the builtin logical operator is used. Have the unsequenced checker ignore dependent expressions to avoid this false positive. The check also happens in template instantiations to catch when the overloaded operator is used. ------------------------------------------------------------------------ ------------------------------------------------------------------------ r277889 | rtrieu | 2016-08-05 16:24:47 -0700 (Fri, 05 Aug 2016) | 9 lines Fix two false positives in -Wreturn-stack-address If the return type is a pointer and the function returns the reference to a pointer, don't warn since only the value is returned, not the reference. If a reference function parameter appears in the reference chain, don't warn since binding happens at the caller scope, so addresses returned are not to local stack. This includes default arguments as well. ------------------------------------------------------------------------ ------------------------------------------------------------------------ r277900 | rtrieu | 2016-08-05 18:44:06 -0700 (Fri, 05 Aug 2016) | 2 lines Fix typos from r277797 and unused variable from r277889. ------------------------------------------------------------------------ llvm-svn: 278020
-
Hans Wennborg authored
------------------------------------------------------------------------ r277743 | bader | 2016-08-04 11:06:27 -0700 (Thu, 04 Aug 2016) | 12 lines [OpenCL] Added underscores to the names of 'to_addr' OpenCL built-ins. Summary: In order to re-define OpenCL built-in functions 'to_{private,local,global}' in OpenCL run-time library LLVM names must be different from the clang built-in function names. Reviewers: yaxunl, Anastasia Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D23120 ------------------------------------------------------------------------ llvm-svn: 278019
-
- Aug 08, 2016
-
-
Vasileios Kalintiris authored
llvm-svn: 277998
-
- Aug 05, 2016
-
-
Simon Atanasyan authored
llvm-svn: 277807
-
Nicolai Haehnle authored
llvm-svn: 277803
-
Hans Wennborg authored
------------------------------------------------------------------------ r277691 | majnemer | 2016-08-03 21:24:02 -0700 (Wed, 03 Aug 2016) | 4 lines Reinstate "[CloneFunction] Don't remove side effecting calls" This reinstates r277611 + r277614 and reverts r277642. A cast_or_null should have been a dyn_cast_or_null. ------------------------------------------------------------------------ ------------------------------------------------------------------------ r277693 | majnemer | 2016-08-03 21:47:18 -0700 (Wed, 03 Aug 2016) | 1 line Forgot the dyn_cast_or_null intended for r277691. ------------------------------------------------------------------------ ------------------------------------------------------------------------ r277773 | majnemer | 2016-08-04 14:28:59 -0700 (Thu, 04 Aug 2016) | 6 lines [CloneFunction] Add a testcase for r277691/r277693 PR28848 had a very nice reduction of the underlying cause of the bug. Our ValueMap had, in an entry for an Instruction, a ConstantInt. This is not at all unexpected but should be handled properly. ------------------------------------------------------------------------ llvm-svn: 277781
-
Devin Coughlin authored
llvm-svn: 277772
-
Nico Weber authored
llvm-svn: 277751
-
Nico Weber authored
llvm-svn: 277750
-
George Burgess IV authored
llvm-svn: 277739
-
- Aug 04, 2016
-
-
Hans Wennborg authored
------------------------------------------------------------------------ r277625 | dexonsmith | 2016-08-03 11:19:43 -0700 (Wed, 03 Aug 2016) | 42 lines IR: Drop uniquing when an MDNode Value operand is deleted This is a fix for PR28697. An MDNode can indirectly refer to a GlobalValue, through a ConstantAsMetadata. When the GlobalValue is deleted, the MDNode operand is reset to `nullptr`. If the node is uniqued, this can lead to a hard-to-detect cache invalidation in a Metadata map that's shared across an LLVMContext. Consider: 1. A map from Metadata* to `T` called RemappedMDs. 2. A node that references a global variable, `!{i1* @GV}`. 3. Insert `!{i1* @GV} -> SomeT` in the map. 4. Delete `@GV`, leaving behind `!{null} -> SomeT`. Looking up the generic and uninteresting `!{null}` gives you `SomeT`, which is likely related to `@GV`. Worse, `SomeT`'s lifetime may be tied to the deleted `@GV`. This occurs in practice in the shared ValueMap used since r266579 in the IRMover. Other code that handles more than one Module (with different lifetimes) in the same LLVMContext could hit it too. The fix here is a partial revert of r225223: in the rare case that an MDNode operand is a ConstantAsMetadata (i.e., wrapping a node from the Value hierarchy), drop uniquing if it gets replaced with `nullptr`. This changes step #4 above to leave behind `distinct !{null} -> SomeT`, which can't be confused with the generic `!{null}`. In theory, this can cause some churn in the LLVMContext's MDNode uniquing map when Values are being deleted. However: - The number of GlobalValues referenced from uniqued MDNodes is expected to be quite small. E.g., the debug info metadata schema only references GlobalValues from distinct nodes. - Other Constants have the lifetime of the LLVMContext, whose teardown is careful to drop references before deleting the constants. As a result, I don't expect a compile time regression from this change. ------------------------------------------------------------------------ llvm-svn: 277639 -
Teresa Johnson authored
llvm-svn: 277628
-
Hans Wennborg authored
------------------------------------------------------------------------ r277504 | nha | 2016-08-02 12:31:14 -0700 (Tue, 02 Aug 2016) | 20 lines AMDGPU: Stay in WQM for non-intrinsic stores Summary: Two types of stores are possible in pixel shaders: stores to memory that are explicitly requested at the API level, and stores that are an implementation detail of register spilling or lowering of arrays. For the first kind of store, we must ensure that helper pixels have no effect and hence WQM must be disabled. The second kind of store must always be executed, because the written value may be loaded again in a way that is relevant for helper pixels as well -- and there are no externally visible effects anyway. This is a candidate for the 3.9 release branch. Reviewers: arsenm, tstellarAMD, mareko Subscribers: arsenm, kzhuravl, llvm-commits Differential Revision: https://reviews.llvm.org/D22675 ------------------------------------------------------------------------ llvm-svn: 277620
-
Hans Wennborg authored
------------------------------------------------------------------------ r277500 | nha | 2016-08-02 12:17:37 -0700 (Tue, 02 Aug 2016) | 17 lines AMDGPU: Track physical registers in SIWholeQuadMode Summary: There are cases where uniform branch conditions are computed in VGPRs, and we didn't correctly mark those as WQM. The stray change in basic-branch.ll is because invoking the LiveIntervals analysis leads to the detection of a dead register that would otherwise not be seen at -O0. This is a candidate for the 3.9 branch, as it fixes a possible hang. Reviewers: arsenm, tstellarAMD, mareko Subscribers: arsenm, llvm-commits, kzhuravl Differential Revision: https://reviews.llvm.org/D22673 ------------------------------------------------------------------------ llvm-svn: 277619
-
Chris Bieneman authored
Fleshing out the note about the autoconf build system being removed and pointing to CMake documentation. llvm-svn: 277617
-
Renato Golin authored
llvm-svn: 277606
-
- Aug 03, 2016
-
-
Renato Golin authored
llvm-svn: 277593
-
Renato Golin authored
llvm-svn: 277591
-