Displaying 1 50 of 277,669 commits (0.020s)

LLVM — llvm/trunk/include/llvm/TableGen Record.h, llvm/trunk/lib/TableGen Record.cpp

TableGen: Remove VarInit::getFieldType

It is redundant with the implementation in TypedInit.

Change-Id: I8ab1fb5c77e4923f7eb3ffae5889f0f8af6093b4

Reviewers: arsenm, craig.topper, tra, MartinO

Subscribers: wdng, llvm-commits

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

LLVM — llvm/trunk/include/llvm/TableGen Record.h, llvm/trunk/lib/TableGen Record.cpp

TableGen: Get rid of Init::getFieldInit

Summary:
FieldInit will just rely on the standardized resolving mechanism to give
us DefInits for folding, thus simplifying the code.

Unlike the removal of resolveListElementReference, this shouldn't have
performance implications, because DefInits do not recurse inside their
record.

Change-Id: Id4544c774c9d9ee92f293615af6ecff706453f21

Reviewers: arsenm, craig.topper, tra, MartinO

Subscribers: wdng, llvm-commits

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

LLVM — llvm/trunk/include/llvm/TableGen Record.h, llvm/trunk/lib/TableGen Record.cpp

TableGen: Remove Init::resolveListElementReference

Summary:
Resolving a VarListElementInit should just resolve the list and then
take its element. This eliminates a lot of duplicated logic and
simplifies the next steps of refactoring resolveReferences.

This does potentially cause sub-elements of the entire list to be
resolved resulting in more work, but I didn't notice a measurable
change in performance, and a later patch adds a caching mechanism that
covers at least the common case of `var[i]` in a more generic way.

Change-Id: I7b59185b855c7368585c329c31e5be38c5749dac

Reviewers: arsenm, craig.topper, tra, MartinO

Subscribers: wdng, llvm-commits

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

LLVM — cfe/trunk/lib/Sema SemaDeclAttr.cpp, cfe/trunk/test/Sema alloc-size.c

When diagnosing the arguments to alloc_size, report the failing argument using a 1-based 
index instead of a 0-based index for consistency.

Patch by Joel Denny.

LLVM — cfe/trunk/lib/Sema SemaDeclAttr.cpp, cfe/trunk/test/Sema warn-type-safety.c

Fix a failing assertion with the pointer_with_type_tag attribute when the function the 
attribute appertains to is variadic.

Patch by Joel Denny.

LLVM — llvm/trunk/lib/CodeGen/AsmPrinter DwarfDebug.cpp

[DebugInfo] Stable sort symbols to remove non-deterministic ordering

Summary: This fixes failure in DebugInfo/X86/multiple-aranges.ll uncovered by D39245.

Reviewers: rafael, echristo, probinson

Reviewed By: probinson

Subscribers: probinson, llvm-commits, JDevlieghere

Tags: #debug-info

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

LLVM — cfe/trunk/include/clang/Basic Attr.td

Switch the default behavior of the Clang<> spelling to opt-in to the C2x attribute 
spellings. NFC to the attribute spellings themselves.

The Clang<> spelling helper generates a spelling for C++11, GNU, and C2x attribute 
spellings. Previously, users had to manually opt in to the C2x spelling while we 
cautiously added attributes to that spelling. Now that majority of attributes are exposed 
in C2x, we can switch the default.
Delta File
+125 -125 cfe/trunk/include/clang/Basic/Attr.td
+125 -125 1 file

LLVM — cfe/trunk/include/clang/Basic Attr.td

Document why the consumed attributes (consumable, callable_when, et al) are not exposed 
with a C2x spelling. NFC.

LLVM — cfe/trunk/include/clang/Basic Attr.td, cfe/trunk/test/Sema attr-external-source-symbol.c internal_linkage.c

Add a C2x spelling for the external_source_symbol and internal_linkage attributes in the 
clang vendor namespace.

Both of these attributes have existing meaning in C code, so there was no reason to 
exclude them from using the new spelling.

LLVM — cfe/trunk/include/clang/Basic Attr.td, cfe/trunk/lib/Parse ParseDecl.cpp

Add a C++11 and C2x spelling for the type safety attribute (argument_with_type_tag, 
pointer_with_type_tag, and type_tag_for_datatype) in the clang vendor namespace.

The TypeTagForDatatype attribute had custom parsing rules that previously prevented it 
from being supported with square bracket notation. The ArgumentWithTypeTag attribute 
previously had unnecessary custom parsing that could be handled declaratively.

LLVM — llvm/trunk/test/Transforms/InstSimplify floating-point-arithmetic.ll

[InstSimplify] Add test cases for removal of vector fabs on known positive.

LLVM — llvm/trunk/test/Transforms/InstSimplify floating-point-arithmetic.ll

[InstSimplify] Remove unused parameter from test cases.

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

[X86] Use SDNode instead of SDPatternOperator. NFC

LLVM — cfe/trunk/include/clang/Basic TargetOptions.h TargetInfo.h, cfe/trunk/include/clang/Driver Options.td

[RISCV] Enable __int128_t and __uint128_t through clang flag

Summary:
If the flag -fforce-enable-int128 is passed, it will enable support for __int128_t and 
__uint128_t types.
This flag can then be used to build compiler-rt for RISCV32.

Reviewers: asb, kito-cheng, apazos, efriedma

Reviewed By: asb, efriedma

Subscribers: shiva0217, efriedma, jfb, dschuff, sdardis, sbc100, jgravelle-google, 
aheejin, rbar, johnrusso, simoncook, jordy.potman.lists, sabuasal, niosHD, cfe-commits

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

LLVM — llvm/trunk/lib/CodeGen/SelectionDAG TargetLowering.cpp, llvm/trunk/test/CodeGen/X86 widen_conv-1.ll

[TargetLowering] SimplifyDemandedVectorElts - pass demanded elts through ADD/SUB ops

LLVM — llvm/trunk/lib/CodeGen/SelectionDAG TargetLowering.cpp, llvm/trunk/test/CodeGen/X86 vector-trunc.ll

[TargetLowering] SimplifyDemandedVectorElts - pass demanded elts through TRUNCATE ops

LLVM — llvm/trunk/test/CodeGen/X86 avx512vl-intrinsics-fast-isel.ll

[X86] Add cvt tests to avx512vl-intrinsics-fast-isel.ll

LLVM — llvm/trunk/lib/Target/X86 X86InstrSSE.td X86InstrMMX.td, llvm/trunk/test/CodeGen/X86 avx-intrinsics-x86.ll sse2-intrinsics-x86.ll

[X86] Allow int_x86_sse2_cvtps2dq and int_x86_avx_cvt_ps2dq_256 to select EVEX encoded 
instructions.

LLVM — llvm/trunk/include/llvm/IR IntrinsicsX86.td

[X86] Remove GCCBuiltin from some intrinsics that are no longer used by clang.

LLVM — cfe/trunk/include/clang/Basic BuiltinsX86.def, cfe/trunk/lib/Headers avx512vlintrin.h

[X86] Remove some masked cvt builtins that can be replaced with legacy sse/avx buiiltins 
and a select.

LLVM — cfe/trunk/include/clang/Basic Attr.td, cfe/trunk/lib/Parse ParseDecl.cpp

Add a C++11 and C2x spelling for the objc_bridge_related attribute in the clang vendor 
namespace.

This attribute has custom parsing rules that previously prevented it from being supported 
with square bracket notation.

LLVM — llvm/trunk/include/llvm/Analysis DivergenceAnalysis.h, llvm/trunk/lib/Transforms/Scalar StructurizeCFG.cpp

Revert "StructurizeCFG: Test for branch divergence correctly"

This reverts commit r325881.

Breaks many bots

LLVM — cfe/trunk/include/clang/Basic Attr.td, cfe/trunk/lib/Parse ParseDecl.cpp

Add a C++11 and C2x spelling for the availability attribute in the clang vendor namespace.

This attribute has custom parsing rules that previously prevented it from being supported 
with square bracket notation. Rework the clang attribute argument parsing to be more 
easily extended for other custom-parsed attributes.

LLVM — llvm/trunk/test/tools/llvm-objdump embedded-source.test

[DebugInfo] Fix buildbot failure on non-X86 targets

LLVM — llvm/trunk/lib/Target/X86 X86ISelLowering.cpp, llvm/trunk/test/CodeGen/X86 psubus.ll

[X86][SSE] combineSubToSubus - support v8i64 handling from SSSE3

Our UMIN/UMAX, vector truncation and shuffle combining is good enough to efficiently 
handle v8i64 with the number of leading zeros that are necessary for PSUBUS.

LLVM — llvm/trunk/lib/Target/X86 X86ISelLowering.cpp, llvm/trunk/test/CodeGen/X86 psubus.ll

[X86][SSE] combineSubToSubus - support v8i32 handling from SSSE3 (not SSE41)

Now that UMIN etc are Legal/Custom for SSE2+, we can efficiently match SUBUS v8i32 cases 
from SSSE3 which can perform efficient truncation with PSHUFB.

LLVM — llvm/trunk/lib/Target/X86 X86ISelLowering.cpp, llvm/trunk/test/CodeGen/X86 psubus.ll

[X86][SSE] combineSubToSubus - begun generalizing to work with any type sizes with 
SplitBinaryOpsAndApply

LLVM — llvm/trunk/lib/Target/X86 X86ISelLowering.cpp

Fix spelling in comment. NFCI.

LLVM — llvm/trunk/lib/Target/Sparc SparcRegisterInfo.h, llvm/trunk/test/CodeGen/SPARC 32abi.ll 64abi.ll

[Sparc]  Return true in enableMultipleCopyHints().

Enable multiple COPY hints to eliminate more COPYs during register allocation.

Note that this is something all targets should do, see
https://reviews.llvm.org/D38128.

Review: James Y Knight

LLVM — libcxx/trunk/include __config

Cleanup __config indention  NFC

This commit indents each level by two space characters, e.g.

#if defined(CONDITION)
#  define _LIBCPP_NAME VALUE
#else
#  define _LIBCPP_NAME VALUE
#endif

The simple #ifndef, #define, and #endif sequences are not indented, e.g.

#ifndef _LIBCPP_NAME
#define _LIBCPP_NAME ...
#endif
Delta File
+432 -420 libcxx/trunk/include/__config
+432 -420 1 file

LLVM — llvm/trunk/include/llvm/IR IntrinsicsX86.td

[X86] Remove GCCBuiltin from some intrinsics that are no longer used by clang.

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

Remove unused variable. We should be warning-free.

LLVM — cfe/trunk/lib/Lex ModuleMap.cpp, cfe/trunk/test/Modules/Inputs/declare-use h.h

Make module use diagnostics refer to the top-level module

All use declarations need to be directly placed in the top-level module
anyway, knowing the submodule doesn't really help. The header that has
the offending #include can easily be seen in the diagnostics source
location.

Review: https://reviews.llvm.org/D43673

LLVM — cfe/trunk/include/clang/Basic BuiltinsX86.def, cfe/trunk/lib/Headers avx512vlintrin.h

[X86] Remove __builtin_ia32_permvarsf256_mask and __builtin_ia32_permvarsi256_mask and use 
the avx2 unmasked versions and a select instead.

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

[CFG] Keep speculatively working around an MSVC compiler crash.

Replace if() with a switch(). Because random changes in the code seem to
suppress the crash.

Story so far:
r325966 - Crash introduced.
r325969 - Speculative fix had no effect.
r325978 - Tried to bisect the offending function, crash suddenly disappeared.
r326016 - After another random change in the code, bug appeared again.
Delta File
+31 -9 cfe/trunk/lib/Analysis/CFG.cpp
+31 -9 1 file

LLVM — llvm/trunk/lib/Target/X86 X86ISelLowering.cpp

[X86] Use SelectionDAG::getNot instead of implementing manually. NFC

LLVM — cfe/trunk/lib/Analysis CFG.cpp, cfe/trunk/test/Analysis cfg-rich-constructors.cpp temp-obj-dtors-cfg-output.cpp

[CFG] Provide construction contexts for temporaries in conditional operators.

When a lifetime-extended temporary is on a branch of a conditional operator,
materialization of such temporary occurs after the condition is resolved.

This change allows us to understand, by including the MaterializeTemporaryExpr
in the construction context, the target for temporary materialization in such
cases.

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

LLVM — lld/trunk/wasm Symbols.h

[WebAssembly] Remove dead code.
Delta File
+0 -1 lld/trunk/wasm/Symbols.h
+0 -1 1 file

LLVM — lld/trunk/wasm Writer.cpp

[WebAssembly] Remove dead code.
Delta File
+0 -4 lld/trunk/wasm/Writer.cpp
+0 -4 1 file

LLVM — cfe/trunk/lib/Analysis CFG.cpp, cfe/trunk/test/Analysis temp-obj-dtors-cfg-output.cpp cfg-rich-constructors.cpp

[CFG] Provide construction contexts for temporaries bound to const references.

In order to bind a temporary to a const lvalue reference, a no-op cast is added
to make the temporary itself const, and only then the reference is taken
(materialized). Skip the no-op cast when looking for the construction context.

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

LLVM — cfe/trunk/lib/Analysis CFG.cpp, cfe/trunk/test/Analysis cfg-rich-constructors.cpp

[CFG] Provide construction contexts for functional cast-like constructors.

When a constructor of a temporary with a single argument is treated
as a functional cast expression, skip the functional cast expression
and provide the correct construction context for the temporary.

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

LLVM — cfe/trunk/include/clang/Analysis CFG.h, cfe/trunk/lib/Analysis CFG.cpp

[CFG] Provide construction contexts for lifetime-extended temporaries.

When constructing a temporary that is going to be lifetime-extended through a
MaterializeTemporaryExpr later, CFG elements for the respective constructor
can now be queried to obtain the reference to that MaterializeTemporaryExpr
and therefore gain information about lifetime extension.

This may produce multi-layered construction contexts when information about
both temporary destruction and lifetime extension is available.

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

LLVM — lld/trunk/wasm Driver.cpp

[WebAssebmly] Minor simplification. NFC.
Delta File
+6 -5 lld/trunk/wasm/Driver.cpp
+6 -5 1 file

LLVM — lld/trunk/wasm InputFiles.cpp

Do not use `auto` for type that is not obvious in a local context.
Delta File
+2 -2 lld/trunk/wasm/InputFiles.cpp
+2 -2 1 file

LLVM — llvm/trunk/lib/Target/AMDGPU SIShrinkInstructions.cpp, llvm/trunk/test/CodeGen/AMDGPU combine-cond-add-sub.ll shrink-carry.mir

[AMDGPU] Shrinking V_SUBBREV_U32

V_SUBBREV_U32 is a commute opcode for V_SUBB_U32. However, when
we try to commute V_SUBB_U32 in order to shrink it we do not then
process V_SUBBREV_U32 and it stay VOP3. This is fixed.

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

LLVM — llvm/trunk/include/llvm/DebugInfo/DWARF DWARFAcceleratorTable.h, llvm/trunk/tools/llvm-dwarfdump llvm-dwarfdump.cpp

Fix build breakage from r326003

- an ambiguous reference to Optional<T> in llvm-dwarfdump.cpp (fixed
  with an explicit prefix).
- a missing base class initialization in Entry copy constructor (fixed
  by using the implicitly default constructor, which is possible after
  some changes which were done during review).

LLVM — llvm/trunk/tools/llvm-objcopy Object.h

[llvm-objcopy] Fix typo in setSymTab

This diff fixes the name of the argument of 
setSymTab and makes setSymTab/setStrTab private 
(to make the public interface a bit cleaner).

Test plan: make check-all

Differential revision: https://reviews.llvm.org/D43661

LLVM — llvm/trunk/include/llvm/CodeGen CommandFlags.def, llvm/trunk/include/llvm/MC MCTargetOptions.h

[WebAssembly] Add exception handling option and feature

Summary:
Add a llc command line option and WebAssembly architecture feature for
exception handling.

Reviewers: dschuff

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

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

LLVM — llvm/trunk/include/llvm/DebugInfo/DWARF DWARFAcceleratorTable.h, llvm/trunk/lib/DebugInfo/DWARF DWARFAcceleratorTable.cpp

Implement equal_range for the DWARF v5 accelerator table

Summary:
This patch implements the name lookup functionality of the .debug_names
accelerator table and hooks it up to "llvm-dwarfdump -find". To make the
interface of the two kinds of accelerator tables more consistent, I've
created an abstract "DWARFAcceleratorTable::Entry" class, which provides
a consistent interface to access the common functionality of the table
entries (such as getting the die offset, die tag, etc.). I've also
modified the apple table to vend entries conforming to this interface.

Reviewers: JDevlieghere, aprantl, probinson, dblaikie

Subscribers: vleschuk, clayborg, echristo, llvm-commits

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

LLVM — lldb/trunk/tools/debugserver/source/MacOSX MachVMMemory.cpp

Delete dead code in MachVMMemory.cpp, NFC

This addresses a compiler warning.