Displaying 1 50 of 281,629 commits (0.021s)

LLVM — cfe/trunk/tools/diagtool CMakeLists.txt

Remove unused code (made unused by r161073, and later more so by r248043).

LLVM — lld/trunk/ELF InputSection.cpp, lld/trunk/test/ELF ppc64-toc-restore.s ppc64-ifunc.s

[PPC64] Fix toc restore nops offset for V2 ABI

The PPC64 V2 ABI restores the toc base by loading from an offset of 24 from r1.
This patch fixes the offset and updates the testcases from V1 to V2. It also
issues an error when a nop is missing after a call to an external function.

Differential Revision: https://reviews.llvm.org/D45892

LLVM — lld/trunk/ELF CallGraphSort.cpp

[ELF] - Simplify. NFC.
Delta File
+3 -5 lld/trunk/ELF/CallGraphSort.cpp
+3 -5 1 file

LLVM — cfe/trunk/include/clang/StaticAnalyzer/Core/BugReporter BugReporterVisitors.h, cfe/trunk/lib/StaticAnalyzer/Checkers GenericTaintChecker.cpp

[analyzer] Move `TaintBugVisitor` from `GenericTaintChecker.cpp` to 
`BugReporterVisitors.h`.

Summary: `TaintBugVisitor` is a universal visitor, and many checkers rely on it, such as 
`ArrayBoundCheckerV2.cpp`, `DivZeroChecker.cpp` and `VLASizeChecker.cpp`. Moving 
`TaintBugVisitor` to `BugReporterVisitors.h` enables other checker can also track where 
`tainted` value came from.

Reviewers: NoQ, george.karpenkov, xazax.hun

Reviewed By: george.karpenkov

Subscribers: szepet, rnkovacs, a.sidorin, cfe-commits, MTC

Differential Revision: https://reviews.llvm.org/D45682

LLVM — cfe/trunk/include/clang/Index IndexingAction.h, cfe/trunk/lib/Index IndexingAction.cpp

[index] Fix methods that take a shared_ptr to just take a reference.

There is no ownership here, passing a shared_ptr just adds confusion. No
functionality change intended.

LLVM — llvm/trunk/bindings/go/llvm DIBuilderBindings.cpp DIBuilderBindings.h, llvm/trunk/include/llvm-c DebugInfo.h

[LLVM-C] DIBuilderBindings for Subrange and Arrays

Summary: Move Go bindings for subranges and DINode arrays.

Reviewers: harlanhaskins, whitequark, deadalnix

Reviewed By: whitequark

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D45933

LLVM — llvm/trunk/test CMakeLists.txt

Sort a target list a bit better.
Delta File
+3 -3 llvm/trunk/test/CMakeLists.txt
+3 -3 1 file

LLVM — llvm/trunk/test/DebugInfo/NVPTX dbg-declare-alloca.ll

[DEBUGINFO, NVPTX] Add the test for the debug info of the local
variables, NFC.

LLVM — llvm/trunk/include/llvm-c DebugInfo.h, llvm/trunk/lib/IR DebugInfo.cpp

[LLVM-C] Finish Up Scope Bindings

Summary: Adds bindings for Module and NameSpace scopes and LLVMDIBuilderCreateForwardDecl, 
a counterpart to LLVMDIBuilderCreateReplaceableCompositeType.

Reviewers: harlanhaskins, whitequark, deadalnix

Reviewed By: whitequark

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D45934

LLVM — llvm/trunk/docs AliasAnalysis.rst

[doc] Removed obsolete -count-aa from AliasAnalysis documentation

Summary:
This patch removes references to AliasAnalysisCounter pass from the AliasAnalysis 
documentation. That pass have been eliminated in 2015, at revision trunk at 247167.

Reviewed By: hfinkel

Differential Revision: https://reviews.llvm.org/D45876
Delta File
+3 -30 llvm/trunk/docs/AliasAnalysis.rst
+3 -30 1 file

LLVM — cfe/trunk/lib/StaticAnalyzer/Checkers CStringChecker.cpp

[analyzer] CStringChecker.cpp - Code refactoring on bug report.

Reviewers: NoQ, george.karpenkov, xazax.hun

Reviewed By: george.karpenkov        

Differential Revision: https://reviews.llvm.org/D44557

LLVM — llvm/trunk/lib/Target/X86 X86SchedSkylakeClient.td X86SchedSkylakeServer.td

[X86] Remove instregex matching from CLAC/STAC.

Note - noticed this as the STAC case as it was unintentionally matching against *STACK* 
pseudo instructions.

LLVM — llvm/trunk/lib/Target/ARM/MCTargetDesc CMakeLists.txt

List cpp file only once (was added in 147117 and 147117 as build fix each).

LLVM — llvm/trunk/lib/Target/AMDGPU SIPeepholeSDWA.cpp

AMDGPU: Fix SDWA peephole for V_AND_B32

Summary:
Found by inspection. We care about the operand that *doesn't*
contain the immediate.

I believe this is currently not hit because we fold 0xff / 0xffff
immediates only later.

Change-Id: Ic3cf8538bc7da5eff3200d96eccf9d339e6345a7

Reviewers: arsenm, rampitec

Subscribers: kzhuravl, wdng, yaxunl, dstuttard, tpr, t-tye, llvm-commits

Differential Revision: https://reviews.llvm.org/D45886

LLVM — llvm/trunk/lib/Target/AMDGPU SIOptimizeExecMasking.cpp, llvm/trunk/test/CodeGen/AMDGPU llvm.amdgcn.init.exec.ll

AMDGPU: Fix a corner case crash in SIOptimizeExecMasking

Summary:
See the new test case; this is really unlikely to happen with real code,
but I ran into this while attempting to bugpoint-reduce a different issue.

Change-Id: I9ade1dc1aa8fd9c4d9fc83661d7b80e310b5c4a6

Reviewers: arsenm, rampitec

Subscribers: kzhuravl, wdng, yaxunl, dstuttard, tpr, t-tye, llvm-commits

Differential Revision: https://reviews.llvm.org/D45885

LLVM — llvm/trunk/lib/Target/AArch64 CMakeLists.txt, llvm/trunk/lib/Target/AMDGPU CMakeLists.txt

Consistently sort add_subdirectory calls in lib/Target/*/CMakeLists.txt

LLVM — llvm/trunk/lib/Target/AArch64 AArch64SVEInstrInfo.td SVEInstrFormats.td, llvm/trunk/test/MC/AArch64/SVE ldnf1b.s ldnf1b-diagnostics.s

[AArch64][SVE] Asm: Support for contiguous, non-faulting LDNF1 (scalar+imm) load 
instructions

Reviewers: fhahn, rengolin, javed.absar, huntergr, SjoerdMeijer, t.p.northover, echristo, 
evandro

Reviewed By: rengolin

Subscribers: tschuett, kristof.beyls, llvm-commits

Differential Revision: https://reviews.llvm.org/D45684

LLVM — llvm/trunk/lib/Transforms/Utils LoopRotationUtils.cpp, llvm/trunk/test/Transforms/LoopRotate pr37205.ll

[LoopRotate] Fix incorrect SCEV invalidation in loop rotation

LoopRotate only invalidates innermost loops while the changes that it makes may
also affert any of this parents. With patch rL329047, SCEV becomes much smarter
about calculation of exit counts for outer loops, so we cannot assume that they are
not affected.

Differential Revision: https://reviews.llvm.org/D45945

LLVM — llvm/trunk/lib/Target/X86 X86SchedBroadwell.td X86SchedHaswell.td

[X86] Remove unnecessary MMX reg-mem InstRW scheduler overrides.

LLVM — cfe/trunk/include/clang/Basic DiagnosticParseKinds.td LangOptions.def, cfe/trunk/lib/Frontend CompilerInvocation.cpp

[OpenCL] Reject virtual functions for OpenCL C++

Differential Revision: https://reviews.llvm.org/D45873

LLVM — lldb/trunk/unittests/tools/lldb-server/tests TestClient.cpp

llgs-tests: Increase packet time out

The default packet timeout of 1 second is a bit too small for these
tests, particularly as they are working in ack-mode, which means they
need to fit twice as many packets into the timeslot.

This does not seem to be a problem on the bots, but for some people
these tests are timing out regularly. I can't be sure increasing this
will solve their problem, but this does seem like a likely culprit.

LLVM — llvm/trunk/lib/Transforms/Utils LoopUnrollRuntime.cpp

[LoopUnroll] Fix potentially incorrect SCEV invalidation in UnrollRuntime

Current runtime unrolling invalidates parent loop saying that it might have changed
after the inner loop has changed, but it doesn't bother to do the same to its parents.
With patch rL329047, SCEV becomes much smarter about calculation of exit counts for
outer loops. We might need to invalidate not only the immediate parent, but also
any of its parents as well.

There is no clear evidence that there is some miscompile happening because of this
(at least I don't have such test), but the common sense says that the current code
is wrong.

Differential Revision: https://reviews.llvm.org/D45940
Reviewed By: chandlerc

LLVM — llvm/trunk/include/llvm/Analysis ScalarEvolution.h, llvm/trunk/lib/Analysis ScalarEvolution.cpp

[LoopSimplify] Fix incorrect SCEV invalidation

In the function `simplifyOneLoop` we optimistically assume that changes in the
inner loop only affect this very loop and have no impact on its parents. In fact,
after rL329047 has been merged, we can now calculate exit counts for outer
loops which may depend on inner loops. Thus, we need to invalidate all parents
when we do something to a loop.

There is an evidence of incorrect behavior of `simplifyOneLoop`: when we insert
`SE->verify()` check in the end of this funciton, it fails on a bunch of existing
test, in particular:

    LLVM :: Transforms/LoopUnroll/peel-loop-not-forced.ll
    LLVM :: Transforms/LoopUnroll/peel-loop-pgo.ll
    LLVM :: Transforms/LoopUnroll/peel-loop.ll
    LLVM :: Transforms/LoopUnroll/peel-loop2.ll

Note that previously we have fixed issues of this variety, see rL328483.
This patch makes this function invalidate the outermost loop properly.

Differential Revision: https://reviews.llvm.org/D45937
Reviewed By: chandlerc

LLVM — cfe/trunk/include/clang/Driver Options.td, cfe/trunk/include/clang/Frontend CodeGenOptions.def

[CodeGen] Reland r330442: Add an option to suppress output of llvm.ident

The test case in the original patch was overly contrained and
failed on PPC targets.

LLVM — cfe/trunk/lib/Format NamespaceEndCommentsFixer.cpp BreakableToken.h

[clang-format] Fix clang-tidy readability problems, NFCI

LLVM — cfe/trunk/lib/Format AffectedRangeManager.cpp AffectedRangeManager.h, cfe/trunk/unittests/Format FormatTestSelective.cpp

Format closing braces when reformatting the line containing the opening brace.

This required a couple of yaks to be shaved:
1. MatchingOpeningBlockLineIndex was misused to also store the
   closing index; instead, use a second variable, as this doesn't
   work correctly for "} else {".
2. We needed to change the API of AffectedRangeManager to not
   use iterators; we always passed in begin / end for the whole
   container before, so there was no mismatch in generality.
3. We need an extra check to discontinue formatting at the top
   level, as we now sometimes change the indent of the closing
   brace, but want to bail out immediately afterwards, for
   example:
     void f() {
       if (a) {
     }
     void g();
   Previously:
     void f() {
       if (a) {
     }
     void g();
   Now:
     void f() {
       if (a) {

    [4 lines not shown]

LLVM — cfe/trunk/lib/Basic/Targets OSTargets.h, cfe/trunk/test/CodeGenCXX float128-declarations.cpp

[Solaris] __float128 is supported on Solaris/x86

When rebasing https://reviews.llvm.org/D40898 with GCC 5.4 on Solaris 11.4, I ran
into a few instances of

In file included from 
/vol/llvm/src/compiler-rt/local/test/asan/TestCases/Posix/asan-symbolize-sanity-test.cc:19:
In file included from 
/usr/gcc/5/lib/gcc/x86_64-pc-solaris2.11/5.4.0/../../../../include/c++/5.4.0/string:40:
In file included from 
/usr/gcc/5/lib/gcc/x86_64-pc-solaris2.11/5.4.0/../../../../include/c++/5.4.0/bits/char_traits.h:39:
In file included from 
/usr/gcc/5/lib/gcc/x86_64-pc-solaris2.11/5.4.0/../../../../include/c++/5.4.0/bits/stl_algobase.h:64:
In file included from 
/usr/gcc/5/lib/gcc/x86_64-pc-solaris2.11/5.4.0/../../../../include/c++/5.4.0/bits/stl_pair.h:59:
In file included from 
/usr/gcc/5/lib/gcc/x86_64-pc-solaris2.11/5.4.0/../../../../include/c++/5.4.0/bits/move.h:57:
/usr/gcc/5/lib/gcc/x86_64-pc-solaris2.11/5.4.0/../../../../include/c++/5.4.0/type_traits:311:39: 
error: __float128 is not supported on this target

  struct __is_floating_point_helper<__float128>
                                    ^

during make check-all.  The line above is inside


    [12 lines not shown]

LLVM — cfe/trunk/include/clang/Frontend Utils.h, cfe/trunk/lib/CodeGen CodeGenAction.cpp BackendUtil.cpp

Use special new Clang flag 'FrontendTimesIsEnabled' instead of 'llvm::TimePassesIsEnabled' 
inside -ftime-report feature.
Differential Revision: https://reviews.llvm.org/D45619

LLVM — llvm/trunk/docs/TableGen LangRef.rst

Fix BNF nits in TableGen language reference.

Summary:
In the course of writing an experimental ANTLR grammar based on this
document, I found three errors in the documented BNF:

SimpleValues of dag type are allowed to have no operands at all after
the initial DagArg specifying the operator. For example, the value
(outs) is extremely common in backends; an example in the test suite
is test/TableGen/AsmVariant.td line 30. But the BNF doesn't allow
DagArgList to expand to the empty string (it must contain at least one
DagArg), and therefore the DagArgList specifying the operands in the
dag-shaped production for SimpleValue should be optional.

In the production for BodyItem with a 'let' and an optional RangeList,
the RangeList should have braces around it if it's present, matching
code such as "let E{7-0} = ..." on test/TableGen/BitsInit.td line 42.
Those braces aren't included in the RangeList nonterminal itself, so
instead they need to be part of the optional segment of the BodyItem
production.

Finally, the identifier after 'defm' should be optional. Again, this
is very common in the real back end .td files; an example in the test
suite is in test/TableGen/defmclass.td line 49.


    [7 lines not shown]

LLVM — cfe/trunk/lib/Format TokenAnnotator.cpp, cfe/trunk/unittests/Format FormatTestTextProto.cpp FormatTestProto.cpp

Revert "[clang-format] Improve Incomplete detection for (text) protos"

This reverts commit r330016.
The incomplete detection has too many false positives, picking up typos
for hard failures and refusing to format anything in that case.

LLVM — lldb/trunk/test CMakeLists.txt

[CMake] Gate 'dsymutil' dependency

Only add `dsymutil` as a test dependency when this is not a stand-alone
build (LLDB_BUILT_STANDALONE).
Delta File
+2 -2 lldb/trunk/test/CMakeLists.txt
+2 -2 1 file

LLVM — llvm/trunk/docs/TableGen index.rst

Test commit access.

Should be a harmless trimming of trailing whitespace from a
documentation file.

(There are other instances of trailing whitespace in this file alone.
I've only fixed one of them, on the basis that that way the rest are
still available for other people's commit-access tests :-)

LLVM — cfe/trunk/include/clang/Basic DiagnosticSemaKinds.td, cfe/trunk/lib/CodeGen CGAtomic.cpp

[Atomics] warn about atomic accesses using libcalls

If an atomic variable is misaligned (and that suspicion is why Clang emits
libcalls at all) the runtime support library will have to use a lock to safely
access it, with potentially very bad performance consequences. There's a very
good chance this is unintentional so it makes sense to issue a warning.

Also give it a named group so people can promote it to an error, or disable it
if they really don't care.

LLVM — llvm/trunk/lib/Target/AArch64 SVEInstrFormats.td AArch64SVEInstrInfo.td, llvm/trunk/test/MC/AArch64/SVE st3d-diagnostics.s st3h-diagnostics.s

[AArch64][SVE] Asm: Support for structured ST2, ST3 and ST4 (scalar+imm) store 
instructions.

Reviewers: fhahn, rengolin, javed.absar, SjoerdMeijer, t.p.northover, echristo, evandro, 
huntergr

Reviewed By: rengolin

Subscribers: tschuett, kristof.beyls, llvm-commits

Differential Revision: https://reviews.llvm.org/D45681

LLVM — llvm/trunk/lib/Transforms/Scalar SimpleLoopUnswitch.cpp, llvm/trunk/test/Transforms/SimpleLoopUnswitch nontrivial-unswitch.ll

[PM/LoopUnswitch] Remove a buggy assert in the new loop unswitch.

The condition this was asserting doesn't actually hold. I've added
comments to explain why, removed the assert, and added a fun test case
reduced out of 403.gcc.

LLVM — llvm/trunk/lib/Target/X86 X86InstrSSE.td, llvm/trunk/test/MC/Disassembler/X86 x86-64.txt

[X86] Add VEX_WIG to VEX encoded version of VCMPPSY/VCMPPDY.

LLVM — cfe/trunk/lib/Driver XRayArgs.cpp

[XRay] Change std::sort to llvm::sort in response to r327219

r327219 added wrappers to std::sort which randomly shuffle the container before
sorting.  This will help in uncovering non-determinism caused due to undefined
sorting order of objects having the same key.

To make use of that infrastructure we need to invoke llvm::sort instead of
std::sort.
Delta File
+1 -1 cfe/trunk/lib/Driver/XRayArgs.cpp
+1 -1 1 file

LLVM — llvm/trunk/lib/Transforms/Scalar SimpleLoopUnswitch.cpp

[PM/LoopUnswitch] Fix comment typo. NFC.

LLVM — llvm/trunk/lib/Target/X86 X86ScheduleZnver1.td

[X86][Znver1] Remove unnecessary BMI1 ANDN InstRW overrides.

LLVM — cfe/trunk/bindings/python/clang cindex.py, cfe/trunk/bindings/python/tests/cindex test_cursor.py

[python bindings] Fix Cursor.result_type for ObjC method declarations - Bug 36677

Summary:
In cindex.py, Cursor.result_type called into the wrong libclang
function, causing cursors for ObjC method declarations to return invalid
result types. Fixes Bug 36677.

Reviewers: jbcoe, rsmith

Reviewed By: jbcoe

Subscribers: cfe-commits, llvm-commits

Differential Revision: https://reviews.llvm.org/D45671

Patch by kjteske (Kyle Teske).

LLVM — llvm/trunk/test/tools/llvm-mca/X86/Broadwell resources-bmi2.s resources-bmi1.s, llvm/trunk/test/tools/llvm-mca/X86/BtVer2 resources-bmi1.s resources-lzcnt.s

[llvm-mca][X86] Add BMI/LZCNT/POPCNT resource tests to all relevant models

The SandyBridge BMI tests are actually run on IvyBridge as that's the first lowest CPU 
that actually support the ISAs (but still use the SandyBridge model).

LLVM — llvm/trunk/bindings/go/llvm DIBuilderBindings.cpp DIBuilderBindings.h, llvm/trunk/include/llvm-c DebugInfo.h

[LLVM-C] Add DIBuilder Bindings For Variable Creation

Summary: Wrap LLVMDIBuilderCreateAutoVariable, LLVMDIBuilderCreateParameterVariable, 
LLVMDIBuilderCreateExpression, and move and correct LLVMDIBuilderInsertDeclareBefore and 
LLVMDIBuilderInsertDeclareAtEnd from the Go bindings to the C bindings.

Reviewers: harlanhaskins, whitequark, deadalnix

Reviewed By: harlanhaskins, whitequark

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D45928

LLVM — llvm/trunk/lib/Target/X86 X86SchedSkylakeServer.td X86SchedHaswell.td, llvm/trunk/test/CodeGen/X86 avx2-schedule.ll

[X86] Remove unnecessary WriteFBlend/WriteBlend InstRW overrides.

Fixed a lot of the default classes which were being completely overridden.

LLVM — llvm/trunk/lib/Target/X86 X86SchedSkylakeServer.td X86SchedSandyBridge.td, llvm/trunk/test/CodeGen/X86 avx512-schedule.ll

[X86] Remove unnecessary WriteFMul/WriteFRcp/WriteFRsqrt InstRW overrides.

LLVM — llvm/trunk/lib/Target/X86 X86ScheduleZnver1.td X86SchedBroadwell.td

[X86] Remove unnecessary CVT instrw overrides.

LLVM — llvm/trunk/include/llvm/ExecutionEngine ExecutionEngine.h

Test commit access.

Remove trailing whitespace.

LLVM — llvm/trunk/include/llvm/IR PatternMatch.h, llvm/trunk/lib/Analysis InstructionSimplify.cpp

[PatternMatch] allow undef elements when matching a vector zero

This is the last step in getting constant pattern matchers to allow
undef elements in constant vectors.

I'm adding a dedicated m_ZeroInt() function and building m_Zero() from
that. In most cases, calling code can be updated to use m_ZeroInt()
directly when there's no need to match pointers, but I'm leaving that
efficiency optimization as a follow-up step because it's not always
clear when that's ok.

There are just enough icmp folds in InstSimplify that can be used for 
integer or pointer types, that we probably still want a generic m_Zero()
for those cases. Otherwise, we could eliminate it (and possibly add a
m_NullPtr() as an alias for isa<ConstantPointerNull>()).

We're conservatively returning a full zero vector (zeroinitializer) in
InstSimplify/InstCombine on some of these folds (see diffs in InstSimplify),
but I'm not sure if that's actually necessary in all cases. We may be 
able to propagate an undef lane instead. One test where this happens is 
marked with 'TODO'.

LLVM — llvm/trunk/lib/Target/X86 X86SchedSkylakeServer.td

[X86][SkylakeServer] Remove unnecessary PMULLD instrw overrides.

LLVM — llvm/trunk/lib/Target/X86 X86ScheduleAtom.td

[X86][Atom] Remove unnecessary scalar/vector load/move instrw overrides.

LLVM — llvm/trunk/test/Transforms/InstCombine logical-select.ll

[InstCombine] add vector test with undef elts; NFC