Displaying 1 50 of 291,854 commits (0.019s)

LLVM — llvm/trunk/test/tools/llvm-size/X86 format-berkeley-tabs.s, llvm/trunk/tools/llvm-size llvm-size.cpp

[llvm-size] Berkeley formatting: use tabs instead of spaces as field delimeters.

This matches GNU behavior for size and allows use of cut to parse the output of llvm-size.

LLVM — cfe/trunk/include/clang/Analysis/Analyses ThreadSafetyTraverse.h, cfe/trunk/lib/Analysis ThreadSafetyCommon.cpp ThreadSafety.cpp

Thread safety analysis: Make printSCFG compile again [NFC]

Not used productively, so no observable functional change.

Note that printSCFG doesn't yet work reliably, it seems to crash
sometimes.

LLVM — cfe/trunk/test/CodeGen codemodels.c

Fix codemodels.c test case (only test mcmodel-kernel on x86)

A recent commit I made broke aarch64 testing, because "kernel"
apparently is not a valid code-model on aarch64, and one of my tests
tested that. This fixes the problem (hopefully) by adding "-triple
x86_64-unknown-linux-gnu" to the test build with "-mcodel-model
kernel".

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

LLVM — llvm/trunk/lib/Target/X86 X86FastISel.cpp, llvm/trunk/test/CodeGen/X86 bmi-intrinsics-fast-isel-x86_64.ll

[X86] Teach fast isel to use MOV32ri64 for loading an unsigned 32 immediate into a 64-bit 
register.

Previously we used SUBREG_TO_REG+MOV32ri. But regular isel was changed recently to use the 
MOV32ri64 pseudo. Fast isel now does the same.

LLVM — cfe/trunk/lib/Analysis ThreadSafety.cpp

Thread safety analysis: Make sure FactEntrys stored in FactManager are immutable [NFC]

Since FactEntrys are stored in the FactManager, we can't manipulate them
anymore when they are stored there.
Delta File
+12 -12 cfe/trunk/lib/Analysis/ThreadSafety.cpp
+12 -12 1 file

LLVM — llvm/trunk/lib/Transforms/Vectorize LoopVectorizationLegality.cpp LoopVectorize.cpp, llvm/trunk/test/Transforms/LoopVectorize pr38800.ll pr37515.ll

[Loop Vectorizer] Abandon vectorization when no integer IV found

Support for vectorizing loops with secondary floating-point induction
variables was added in r276554.  A primary integer IV is still required
for vectorization to be done.  If an FP IV was found, but no integer IV
was found at all (primary or secondary), the attempt to vectorize still
went forward, causing a compiler-crash.  This change abandons that
attempt when no integer IV is found.  (Vectorizing FP-only cases like
this, rather than bailing out, is discussed as possible future work
in D52327.)

See PR38800 for more information.

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

LLVM — llvm/trunk/cmake/modules AddLLVM.cmake

Move individual benchmark targets into the Utils folder in IDEs.

LLVM — llvm/trunk/include/llvm/DebugInfo/PDB PDBExtras.h IPDBRawSymbol.h

Try moving this function to another file.

I can't reproduce this compilation failure so I can't really
test this fix.

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

[ORC] In RTDyldObjectLinkingLayer, only call NotifyFreed if the object file
has been finalized.

This prevents crashes on unfinalized objects for clients using
JITEventListeners.

Patch by Geoff Levner. Thanks Geoff!

LLVM — llvm/trunk/utils/benchmark/src CMakeLists.txt

Add benchmark and benchmark_main to the Utils folder in IDEs.

LLVM — llvm/trunk/lib/DebugInfo/PDB/Native NativeTypeFunctionSig.cpp

Add missing include.

LLVM — llvm/trunk/include/llvm/DebugInfo/PDB/Native NativeTypeFunctionSig.h SymbolCache.h, llvm/trunk/lib/DebugInfo/PDB CMakeLists.txt

[NativePDB] Add support for reading function signatures.

This adds support for parsing function signature records and returning
them through the native DIA interface.

LLVM — llvm/trunk/include/llvm/DebugInfo/CodeView TypeRecordHelpers.h TypeRecord.h, llvm/trunk/include/llvm/DebugInfo/PDB IPDBEnumChildren.h

[PDB] Add native reading support for UDT / class types.

This allows the native reader to find records of class/struct/
union type and dump them.  This behavior is tested by using the
diadump subcommand against golden output produced by actual DIA
SDK on the same PDB file, and again using pretty -native to
confirm that we actually dump the classes.  We don't find class
members or anything like that yet, for now it's just the class
itself.

LLVM — llvm/trunk/include/llvm/IR PassInstrumentation.h PassManager.h, llvm/trunk/test/Other new-pm-thinlto-defaults.ll new-pm-lto-defaults.ll

[New PM][PassInstrumentation] Adding PassInstrumentation to the AnalysisManager runs

As a prerequisite to time-passes implementation which needs to time both passes
and analyses, adding instrumentation points to the Analysis Manager.
The are two functional differences between Pass and Analysis instrumentation:
  - the latter does not increment pass execution counter
  - it does not provide ability to skip execution of the corresponding analysis

Reviewers: chandlerc, philip.pfaffe
Differential Revision: https://reviews.llvm.org/D51275

LLVM — lld/trunk/COFF Writer.cpp DLL.cpp, lld/trunk/test/COFF imports-gnu.test imports-gnu-only.s

[COFF] Support linking to import libraries from GNU binutils

GNU binutils import libraries aren't the same kind of short import
libraries as link.exe and LLD produce, but are a plain static library
containing .idata section chunks. MSVC link.exe can successfully link
to them.

In order for imports from GNU import libraries to mix properly with the
normal import chunks, the chunks from the existing mechanism needs to
be added into named sections like .idata$2.

These GNU import libraries consist of one header object, a number of
object files, one for each imported function/variable, and one trailer.
Within the import libraries, the object files are ordered alphabetically
in this order. The chunks stemming from these libraries have to be
grouped by what library they originate from and sorted, to make sure
the section chunks for headers and trailers for the lists are ordered
as intended. This is done on all sections named .idata$*, before adding
the synthesized chunks to them.

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

LLVM — llvm/trunk/test/tools/llvm-dwarfdump/X86 stats-inlining-multi-cu.ll stats-inlining-single-cu.ll, llvm/trunk/tools/llvm-dwarfdump Statistics.cpp

llvm-dwarfdump --statistics: Unique abstract origins across multiple CUs.

Instead of indexing local variables by DIE offset, use the variable
name + the path through the lexical block tree. This makes the lookup
key consistent across duplicate abstract origins in different CUs.

LLVM — llvm/trunk/test/CodeGen/X86 avx-logic.ll

[x86] add more tests for poetntial andnp splitting with AVX1; NFC

LLVM — cfe/trunk/lib/CodeGen CGOpenMPRuntime.cpp

Make compare function in r342648 have strict weak ordering.

Comparison functions used in sorting algorithms need to have strict weak
ordering.  Remove the assert and allow comparisons on all lists.

LLVM — llvm/trunk/test/CodeGen/X86 load-scalar-as-vector.ll

[X86] Add AVX512 target to load scalar to vector tests

To investigate broadcast instruction codegen for D51553

LLVM — llvm/trunk/lib/Target/WebAssembly WebAssemblyInstrControl.td WebAssemblyInstrFormats.td, llvm/trunk/utils/TableGen AsmMatcherEmitter.cpp

[WebAssembly] Simplified selecting asmmatcher stack instructions.

Summary:
By using the existing isCodeGenOnly bit in the tablegen defs, as
suggested by tlively in https://reviews.llvm.org/D51662

Tested: llvm-lit -v `find test -name WebAssembly`

Reviewers: tlively

Subscribers: dschuff, sbc100, jgravelle-google, aheejin, sunfish, llvm-commits

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

LLVM — llvm/trunk README.txt

Test commit. Removed a blank line.
Delta File
+0 -1 llvm/trunk/README.txt
+0 -1 1 file

LLVM — cfe/trunk/lib/StaticAnalyzer/Checkers/RetainCountChecker RetainCountChecker.cpp RetainCountChecker.h, cfe/trunk/test/Analysis retain-release-path-notes.m retain-release-arc.m

[analyzer] Process state in checkEndFunction in RetainCountChecker

Modify the RetainCountChecker to perform state "adjustments" in
checkEndFunction, as performing work in PreStmt<ReturnStmt> does not
work with destructors.
The previous version made an implicit assumption that no code runs
after the return statement is executed.

rdar://43945028

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

LLVM — cfe/trunk/lib/StaticAnalyzer/Core ExprEngine.cpp

[analyzer] Highlight sink nodes in red

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

LLVM — cfe/trunk/include/clang/Analysis ProgramPoint.h, cfe/trunk/lib/StaticAnalyzer/Core PathDiagnostic.cpp ExprEngine.cpp

[analyzer] Associate diagnostics created in checkEndFunction with a return statement, if 
possible

If not possible, use the last line of the declaration, as before.

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

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

[analyzer] [NFC] Prefer make_unique over "new"

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

LLVM — cfe/trunk/lib/StaticAnalyzer/Core BugReporter.cpp

[analyzer] Fix bug in isInevitablySinking

If the non-sink report is generated at the exit node, it will be
suppressed by the current functionality in isInevitablySinking, as it
only checks the successors of the block, but not the block itself.

The bug shows up in RetainCountChecker checks.

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

LLVM — cfe/trunk/include/clang/StaticAnalyzer/Core/BugReporter BugType.h, cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive ExprEngine.h CheckerContext.h

[analyzer] [NFC] Dead code removal

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

LLVM — lldb/trunk/include/lldb/Core Architecture.h, lldb/trunk/source/Plugins/Architecture CMakeLists.txt Mips

Move architecture-specific address adjustment to architecture plugins

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

LLVM — llvm/trunk/test/CodeGen/WebAssembly simd-bitcasts.ll simd-conversions.ll

[WebAssembly][NFC] Rename simd-conversions test to simd-bitcasts

Summary:
This name is more accurate and I want to reuse the simd-conversions
name for testing the actual conversion ops.

Reviewers: aheejin, dschuff

Subscribers: sbc100, jgravelle-google, sunfish, llvm-commits

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

LLVM — llvm/trunk/include/llvm/IR Module.h, llvm/trunk/lib/IR Module.cpp

Pass code-model through Module IR to LTO which will use it.

Currently the code-model does not get saved in the module IR,
so if a code model is specified when compiling with LTO,
it gets lost and is not propagated properly to LTO. This patch,
along with one for the front end, fixes that.

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

LLVM — llvm/trunk/include/llvm/ADT PointerSumType.h

[NFC] use bit_cast in PointerSumType

The code was already using union and memcpy to do this. Remove the memcpy. We can't just 
change the union because a reference to its member is returned.

LLVM — cfe/trunk/lib/CodeGen CodeGenModule.cpp, cfe/trunk/test/CodeGen codemodels.c

Add necessary support for storing code-model to module IR.

Currently the code-model does not get saved in the module IR, so if a
code model is specified when compiling with LTO, it gets lost and is
not propagated properly to LTO. This patch does what is necessary in
the front end to pass the code-model to the module, so that the back
end can store it in the Module .

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

LLVM — lldb/trunk/source/Core CMakeLists.txt, lldb/trunk/source/Host CMakeLists.txt

build: add libedit to include paths

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

LLVM — llvm/trunk/test/CodeGen/X86 avx-logic.ll

[x86] add (negative) andnp test for D52318; NFC

LLVM — llvm/trunk/test/CodeGen/X86 load-scalar-as-vector.ll

[x86] add test with optsize attribute for scalar->vector transform; NFC

LLVM — lld/trunk/docs ReleaseNotes.rst

Update release notes.
Delta File
+9 -1 lld/trunk/docs/ReleaseNotes.rst
+9 -1 1 file

LLVM — llvm/trunk/test/MC/WebAssembly basic-assembly.s, llvm/trunk/utils/TableGen AsmMatcherEmitter.cpp

[WebAssembly] Made assembler only use stack instruction tablegen defs

Summary:
This ensures we have the non-register version of the instruction.

The stack version of call_indirect now wants a type index argument,
so that has been added in the existing tests.

Tested:
llvm-lit -v `find test -name WebAssembly`

Reviewers: dschuff

Subscribers: sbc100, jgravelle-google, aheejin, sunfish, llvm-commits

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

LLVM — cfe/trunk/lib/Parse ParseTemplate.cpp, cfe/trunk/test/Parser cuda-kernel-call-c++11.cu cuda-kernel-call.cu

[CUDA] Fixed parsing of optional template-argument-list.

We need to consider all tokens that start with '>' when
we're checking for the end of an empty template argument list.

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

LLVM — llvm/trunk/lib/Target/Hexagon HexagonConstExtenders.cpp

[Hexagon] Avoid functions with exception handling in HexagonConstExtenders

The constant-extender optimization does a form of code motion, which is
complicated in the presence of exception handling.

LLVM — cfe/trunk/lib/CodeGen CGOpenMPRuntime.cpp

[NFC] remove unused variable

It was causing a warning.

LLVM — cfe/trunk/include/clang/AST DeclCXX.h, cfe/trunk/include/clang/Sema Sema.h

[CUDA] Ignore uncallable functions when we check for usual deallocators.

Previously clang considered function variants from both sides of
compilation and that resulted in picking up wrong deallocation function.

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

LLVM — lld/trunk/docs ReleaseNotes.rst

Update release notes.
Delta File
+6 -2 lld/trunk/docs/ReleaseNotes.rst
+6 -2 1 file

LLVM — lld/trunk/ELF/Arch X86.cpp AArch64.cpp, lld/trunk/test/ELF aarch64-cortex-a53-843419-recognize.s i386-retpoline-nopic.s

Align AArch64 and i386 image base to superpage

Summary:

As for x86_64, the default image base for AArch64 and i386 should be
aligned to a superpage appropriate for the architecture.

On AArch64, this is 2 MiB, on i386 it is 4 MiB.

Reviewers: emaste, grimar, javed.absar, espindola, ruiu, peter.smith, srhines, rprichard

Reviewed By: ruiu, peter.smith

Subscribers: jfb, markj, arichardson, krytarowski, kristof.beyls, llvm-commits

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

LLVM — llvm/trunk/lib/TableGen Record.cpp

[tblgen] Fix undefined behaviour when assigning integers to large bits<n>'s

This code:
  bits<96> X = 0;
was triggering undefined behaviour since it iterates over bits 0..95 and tests
them against the IntInit using 1LL << I.

This patch resolves the undefined behaviour by continuing to treat the IntInit
as a 64-bit value and simply causing all bit tests in excess of 64-bits to report
false. As a result,
  bits<96> X = -1;
will be equivalent to:
  bits<96> X;
  let X{0-63} = -1;
  let X{64-95} = 0;

LLVM — llvm/trunk/lib/Target/AMDGPU AMDGPUTargetMachine.cpp, llvm/trunk/lib/Transforms/Scalar StructurizeCFG.cpp

revert changes from r342722

"[AMDGPU] lower-switch in preISel as a workaround for legacy DA"

This broke regression tests. The first breakage was noticed here:
http://lab.llvm.org:8011/builders/lld-x86_64-freebsd/builds/23549

LLVM — llvm/trunk/lib/Target/AArch64 AArch64FastISel.cpp

AArch64FastISel: Abort if we failed to select operand of intrinsic

rdar://44642447

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

LLVM — cfe/trunk/lib/Sema SemaDeclCXX.cpp, cfe/trunk/test/OpenMP declare_target_codegen.cpp

[OPENMP] Disable emission of the class with vptr if they are not used in
target constructs.

Prevent compilation of the classes with the virtual tables when
compiling for the device.

LLVM — llvm/trunk/test/Transforms/InstCombine scalarization.ll

[InstCombine] add tests for extractelement; NFC

There are folds under visitExtractElementInst() that don't appear
to have any test coverage, so adding a few basic cases here.

LLVM — llvm/trunk/include/llvm/ADT bit.h

[ADT] restrict bit_cast to trivially-constructible To

Summary: As discussed in r341853 by blaikie, the reinterpret_cast was technically an 
aliasing violation. Restrict our bit_cast implementation to To which are 
trivially-constructible (and note the existing restriction to constexpr). Once we move to 
C++17 we can use a version of bit_cast without these restrictions, or if we care we can 
SFINAE a different implementation when To isn't trivially-constructible.

Originally landed in r342710 and reverted in r342711 because is_trivially_copyable is only 
in GCC 5.1 and later.

Reviewers: dblaikie, rsmith

Subscribers: dexonsmith, kristina, llvm-commits

Differential Revision: https://reviews.llvm.org/D52332
Delta File
+14 -11 llvm/trunk/include/llvm/ADT/bit.h
+14 -11 1 file

LLVM — cfe/trunk/lib/CodeGen CGOpenMPRuntimeNVPTX.cpp, cfe/trunk/test/OpenMP nvptx_target_teams_distribute_parallel_for_codegen.cpp nvptx_target_teams_distribute_parallel_for_simd_codegen.cpp

[OPENMP][NVPTX] Enable support for lastprivates in SPMD constructs.

Previously we could not use lastprivates in SPMD constructs, patch
allows supporting lastprivates in SPMD with uninitialized runtime.