Skip to content

LLVM and SPIRV-LLVM-Translator pulldown (WW33) #2287

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 606 commits into from
Aug 11, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
606 commits
Select commit Hold shift + click to select a range
f2942f9
GlobalISel: Add node mappings for frameindex/blockaddress
arsenm Jul 31, 2020
6cd50e7
[libc] Add implementations for isblank, iscntrl, isgraph, ispunct.
cgyurgyik Aug 4, 2020
3e16e21
GlobalISel: Handle llvm.localescape
arsenm Jul 29, 2020
0729a77
[llvm-symbolizer][test] Fix pdb/pdb.test after D83530
MaskRay Aug 4, 2020
3bfbc5d
[MLIR][Affine] Fix createPrivateMemRef in affine fusion
dcaballe Aug 4, 2020
6d218b4
BPF: support type exist/size and enum exist/value relocations
yonghong-song Jul 30, 2020
0f2b47b
[FastISel] Don't transform FSUB(-0, X) -> FNEG(X) in FastISel
Aug 4, 2020
1d6a724
[MLIR] Change FunctionType::get() and TupleType::get() to use TypeRange
jurahul Aug 4, 2020
47f7174
[WebAssembly] Use "signed char" instead of "char" in SIMD intrinsics.
sunfishcode Mar 18, 2020
a4e537d
[libFuzzer] Fix endianness issue in ForEachNonZeroByte()
iii-i Jul 30, 2020
153df13
[SanitizerCoverage] Fix types of __stop* and __start* symbols
iii-i Jul 30, 2020
ea9b82d
[libFuzzer] Enable for SystemZ
iii-i Jul 30, 2020
bb33f92
[lldb/Test] Add missing stdio.h includes
JDevlieghere Aug 4, 2020
bf2aa74
[OpenMP] support build on msys2/mingw with clang or gcc
adrpo Aug 4, 2020
f0f68c6
[HotColdSplit] Add test case for unlikely attribute in outlined function
hiraditya Aug 4, 2020
95efea4
[AArch64][SVE] Widen narrow sdiv/udiv operations.
efriedma-quic Aug 3, 2020
e7af986
[lldb-vscode ]Add Syntax Highlighting to Disassembly View
Aug 4, 2020
f8fb783
GlobalISel: Add utilty for getting function argument live ins
arsenm Jul 20, 2020
ba3d84d
[lldb/Test] Skip tests that try to get the remote environment
JDevlieghere Aug 4, 2020
89011fc
AMDGPU/GlobalISel: Select llvm.returnaddress
arsenm Jul 20, 2020
65b6dbf
[llvm][NFC] Moved implementation of TrainingLogger outside of its decl
mtrofin Aug 4, 2020
486e84d
AMDGPU/GlobalISel: Use live in helper function for returnaddress
arsenm Jul 20, 2020
e8b7eda
[lldb/Test] Add @skipIfRemote decorator to TestProcessList.py
JDevlieghere Aug 4, 2020
09897b1
[RDF] Remove uses of RDFRegisters::normalize (deprecate)
Aug 4, 2020
4a47f1c
[SelectionDAG][SVE] Support scalable vectors in getConstantFP()
efriedma-quic Aug 4, 2020
f50b3ff
[Hexagon] Use InstSimplify instead of ConstantProp
aeubanks Jul 29, 2020
bf82ff6
Teach SROA to handle allocas with more than one dbg.declare.
adrian-prantl Aug 3, 2020
47fe1b6
[RDF] Lower the sorting complexity in RDFLiveness::getAllReachingDefs
Aug 4, 2020
f0f467a
[RDF] Cache register aliases in PhysicalRegisterInfo
Aug 4, 2020
4b25f67
[RDF] Really remove remaining uses of PhysicalRegisterInfo::normalize
Aug 4, 2020
00602ee
BPF: simplify IR generation for __builtin_btf_type_id()
yonghong-song Aug 3, 2020
9521704
[RDF] Use hash-based containers, cache extra information
Aug 4, 2020
06d4257
[RDF] Add operator<<(raw_ostream&, RegisterAggr), NFC
Aug 4, 2020
7e9bab6
Fix debugserver's qProcessInfo reporting of maccatalyst binaries
adrian-prantl Jul 25, 2020
3f33033
[NFC][InstCombine] Negator: add tests for negation of left-shift by c…
LebedevRI Aug 4, 2020
8fd57b0
[NFC][InstCombine] Fix value names (s/%tmp/%i/) and autogenerate a fe…
LebedevRI Aug 4, 2020
8aeb2fe
[InstCombine] Negator: -(X << C) --> X * (-1 << C)
LebedevRI Aug 4, 2020
ac70b37
Revert "[InstCombine] Negator: -(X << C) --> X * (-1 << C)"
LebedevRI Aug 5, 2020
90b9c49
[llvm] Expose type and element count-related APIs on TensorSpec
mtrofin Aug 4, 2020
03a822f
[StackSafety,NFC] Add combined index test
vitalybuka Aug 5, 2020
4c9ed3e
[lldb/testsuite] Skip 'frame diagnose' tests based on architecture
fredriss Aug 5, 2020
0c7af8c
[X86] Optimize getImpliedDisabledFeatures & getImpliedEnabledFeatures…
MaskRay Aug 5, 2020
dd37b5a
PR46997: don't run clang-format on clang's testcases.
zygoloid Aug 5, 2020
fe74f73
[StackSafety,NFC] Add combined index test
vitalybuka Aug 5, 2020
e3df947
[llvm-cov] reset executation count to 0 after wrapped segment
ZequanWu Jul 31, 2020
54615ec
GlobalISel: Move load/store lowering to separate functions
arsenm Jul 31, 2020
8f65c93
GlobalISel: Fix redundant variable and shadowing
arsenm Jul 31, 2020
1ea182c
GlobalISel: Simplify code
arsenm Jul 31, 2020
93cebb1
GlobalISel: Use buildAnyExtOrTrunc
arsenm Jul 31, 2020
c35585e
DomTree: Make PostDomTree immune to block successors swap
Aug 5, 2020
02a629d
[BPI][NFC] Unify handling of normal and SCC based loops
Jul 29, 2020
1366d66
Revert "DomTree: Make PostDomTree immune to block successors swap"
joker-eph Aug 5, 2020
3401f97
[JumpThreading] Add a test for D85023; NFC
aqjune Aug 4, 2020
e0d99e9
[JumpThreading] Consider freeze as a zero-cost instruction
aqjune Aug 4, 2020
b989fcb
[llvm-rc] Allow string table values split into multiple string literals
mstorsjo Aug 4, 2020
521c0b2
[MLIR][SPIRVToLLVM] Updated documentation for SPIR-V to LLVM conversion
georgemitenkov Aug 5, 2020
bc10888
DomTree: Make PostDomTree indifferent to block successors swap
Aug 5, 2020
e739648
[MLIR][SPIRVToLLVM] Conversion pattern for loop op
georgemitenkov Aug 5, 2020
c5cdc3e
[SyntaxTree] Add test coverage for `->*` operator
Aug 4, 2020
c952ec1
[lldb] fix building with panel.h being in /usr/include/ncurses/
llunak Aug 4, 2020
2f1b24b
[lldb][gui] implement TerminalSizeChanged()
llunak Aug 2, 2020
7a63dc5
[lldb][gui] implement shift+tab for going back in views
llunak Aug 2, 2020
d6868d9
[lldb][gui] implement breakpoint removal on breakpoint toggling
llunak Aug 2, 2020
c7be982
[lldb][gui] move TestGuiBasicDebug.py to lldb/test and update it
llunak Aug 3, 2020
db828ab
[lldb][gui] add a test for 'b' (toggle breakpoint)
llunak Aug 3, 2020
621681e
[Flang] Fix multi-config generator builds
banach-space Aug 1, 2020
04cf4a5
[AMDGPU] Lower frem f16
jayfoad Jul 24, 2020
1bb07e1
[AMDGPU] Precommit tests for D84518 Propagate fast math flags in frem…
jayfoad Jul 24, 2020
8cbf4a1
[AMDGPU] Propagate fast math flags in frem lowering
jayfoad Jul 24, 2020
1598067
[MLIR][SPIRVToLLVM] Updated LLVM types in the documentation
georgemitenkov Aug 5, 2020
f291663
[AArch64][SVE] Disable tail calls if callee does not preserve SVE regs.
sdesmalen-arm Aug 5, 2020
ba0e714
Do not map read-only data memory sections with EXECUTE flags.
digit-android Aug 5, 2020
cc68c12
[lldb/TestingSupport] Manually disable GTEST_HAS_TR1_TUPLE
tkrasnukha Aug 4, 2020
75012a8
[lldb] Use PyUnicode_GetLength instead of PyUnicode_GetSize
tkrasnukha Aug 4, 2020
bc056b3
[lldb] Suppress MSVC warning C4065
tkrasnukha Aug 4, 2020
14948a0
[compiler-rt] Normalize some in/out doxygen parameter in interface
goussepi Aug 5, 2020
4cd9237
[MLIR][Shape] Expose extent tensor type builder
frgossen Aug 5, 2020
21f142c
[lldb] temporary commit to see why a test is failing only on lldb-aar…
llunak Aug 5, 2020
1382819
Revert "[lldb] temporary commit to see why a test is failing only on …
llunak Aug 5, 2020
4963ca4
[docs] Document pattern of using CHECK-SAME to skip irrelevant lines
rupprecht Aug 4, 2020
c558c22
[llvm-symbolizer] Add legacy aliases -demangle=true and -demangle=false.
d0k Aug 5, 2020
f97019a
[llvm-readobj/elf] - Add a testing for --stackmap and refine the impl…
Aug 4, 2020
a3d427d
[mlir] Lower RankOp to LLVM for unranked memrefs.
pifon2a Aug 5, 2020
fab4b59
[mlir] Conversion of ViewOp with memory space to LLVM.
arpith-jacob Aug 5, 2020
188187f
[lldb] expect TestGuiBasicDebug.py failure on aarch64
llunak Aug 5, 2020
4aaf301
[DAG] Fold vector (aext (load x)) -> (zext (truncate (zextload x)))
RKSimon Aug 5, 2020
927fc53
[SVE] Add lowering for fixed length vector and, or & xor operations.
paulwalker-arm Aug 5, 2020
3ab0155
Revert "[CMake] Simplify CMake handling for zlib"
zmodem Aug 5, 2020
300899b
[X86][AVX] Add test showing unnecessary duplicate HADD instructions
RKSimon Aug 5, 2020
e3d3657
CallLowering.h - remove unnecessary CCState forward declaration. NFCI.
RKSimon Aug 5, 2020
315e1da
GISelWorkList.h - remove unnecessary includes. NFCI.
RKSimon Aug 5, 2020
a441616
Support member expressions in bugprone-bool-pointer-implicit-conversion.
tetsuo-cpp Aug 5, 2020
bd7f3f8
[obj2yaml] Add support for dumping the .debug_aranges section.
higuoxing Aug 5, 2020
bdb9295
[mlir] Fix convert-to-llvmir.mlir test broken due to syntax change
ftynse Aug 5, 2020
7b99390
DWARFVerifier.h - remove unnecessary forward declarations and include…
RKSimon Aug 5, 2020
f2675ab
[ARM][CostModel] Implement getCFInstrCost
sparker-arm Aug 5, 2020
45f2a56
[CUDA][HIP] Support accessing static device variable in host code for…
yxsamliu Aug 4, 2020
8a716ad
Merge from 'sycl' to 'sycl-web'
Aug 5, 2020
4e49157
[mlir] Remove LLVMTypeTestDialect
ftynse Aug 4, 2020
00b89f6
[clang][NFC] Remove spurious +x flag on DeclTemplate.cpp and DeclTemp…
riccibruno Aug 5, 2020
98b4b45
[clang][NFC] Add a test showcasing an unnamed template parameter in a…
riccibruno Aug 5, 2020
bc29634
[clang][NFC] Remove an old workaround for MSVC 2013
riccibruno Aug 5, 2020
6f2fa9d
[clang][NFC] Document NamedDecl::printName
riccibruno Aug 5, 2020
1970145
[clang][nearly-NFC] Remove some superfluous uses of NamedDecl::getNam…
riccibruno Aug 5, 2020
94b4311
[clang][NFCI] Get rid of ConstantMatrixTypeBitfields to avoid increas…
riccibruno Aug 5, 2020
f7a039d
[clang][NFC] DeclPrinter: use NamedDecl::getDeclName instead of Named…
riccibruno Aug 5, 2020
cc26121
[gn build] (manually) merge 3ab01550b
nico Aug 5, 2020
f5df5cd
Recommit "[InstCombine] Negator: -(X << C) --> X * (-1 << C)"
LebedevRI Aug 5, 2020
75f239e
[mlir] Initial version of C APIs
ftynse Aug 5, 2020
4dcbb9c
[clang] Add -fno-delayed-template-parsing to the added unit tests in …
riccibruno Aug 5, 2020
d21ce40
[Statepoints] Operand folding in presense of tied registers.
dantrushin Jun 10, 2020
05e672b
Merge from 'master' to 'sycl-web' (#1)
MoringLiu Aug 5, 2020
002d61d
[OpenMP] Fix `present` for exit from `omp target data`
jdenny-ornl Aug 5, 2020
26cf9c1
[OpenMP][Docs] Add map clause reordering status as unclaimed
jdenny-ornl Aug 5, 2020
03bb545
[OpenMP][Docs] Mark `present` map type modifier as done
jdenny-ornl Aug 5, 2020
5ab4398
[OpenMP] Fix `omp target update` for array extension
jdenny-ornl Aug 5, 2020
6ae5b9e
[llvm-readobj] - Make decode_relrs() don't return Expected<>. NFCI.
Aug 5, 2020
a57bfb4
[X86][AVX] Fold CONCAT(HOP(X,Y),HOP(Z,W)) -> HOP(CONCAT(X,Z),CONCAT(Y…
RKSimon Aug 5, 2020
6a06c7a
[X86] isHorizontalBinOp - only update LHS/RHS references on success
RKSimon Aug 5, 2020
1fdab96
[libc] Add isspace, isprint, isxdigit implementations.
cgyurgyik Aug 5, 2020
049f6ad
[libc] [obvious] Add ctype functions to linux api.
cgyurgyik Aug 5, 2020
271d9c5
Bump forgotten version nbr in llvm/docs/conf.py
zmodem Aug 5, 2020
0117328
[clangd] Fix a crash in DefineInline
kadircet Aug 5, 2020
bd2c88b
[InstSimplify] reduce code duplication in simplifyICmpWithMinMax(); NFC
rotateright Aug 5, 2020
0ccda7c
MachO: support `-syslibroot`
compnerd Jun 20, 2020
d561d1b
[JITLink][AArch64] Improve debug output for addend relocations.
lhames Aug 5, 2020
47cfffe
[JITLink][AArch64] Handle addends on PAGE21 / PAGEOFF12 relocations.
lhames Aug 5, 2020
98d91ae
Add libFuzzer shared object build output
morehouse Aug 5, 2020
acb66b9
[ELF] --oformat=binary: use LMA to compute file offsets
MaskRay Aug 5, 2020
21b4f80
[ELF] --icf: don't fold text sections with LSDA
MaskRay Aug 4, 2020
030ddc0
[ELF] Allow sections after a non-SHF_ALLOC section to be covered by P…
MaskRay Aug 5, 2020
bc7456f
[mlir] Fix rank bitwidth in UnrankedMemRefType conversion.
pifon2a Aug 5, 2020
1d75f00
[MLIR][NFC] Fix clang-tidy warnings in std to llvm conversion
bondhugula Aug 5, 2020
719954e
[InstSimplify] add tests for icmp with 'mul nuw' operand; NFC
rotateright Aug 5, 2020
26f79e2
[NFC][InstCombine] Tests for negation of `add` w/ single negatible op…
LebedevRI Aug 5, 2020
3a3c951
[InstCombine] Negator: 0 - (X + Y) --> (-X) - Y iff a single opera…
LebedevRI Aug 5, 2020
3169d92
Remove special Hexagon packet traversal code
Jul 30, 2020
882d8e6
[lldb] Make SBTarget::LaunchSimple start form the target's LaunchInfo
JDevlieghere Aug 5, 2020
249a1d4
[lldb] Add an option to inherit TCC permissions from parent.
JDevlieghere Aug 5, 2020
a05ec85
[NFC][InstCombine] Negator: include all the needed headers, IWYU
LebedevRI Aug 5, 2020
e976168
[LoopVectorizer] Inloop vector reductions
davemgreen Aug 5, 2020
1e90bd7
[ASan][Darwin] Adapt test for macOS 11+ version scheme
Aug 5, 2020
f425c04
[lldb/test] Replace LLDB_TEST_SRC env variable with configuration
rupprecht Aug 5, 2020
b18c41c
[TFUtils] Expose untyped accessor to evaluation result tensors
mtrofin Aug 5, 2020
3c39db0
Revert "[LoopVectorizer] Inloop vector reductions"
rupprecht Aug 5, 2020
b60f998
[X86][SSE] Fold 128-bit PACK(EXTEND(X),EXTEND(Y)) -> CONCAT(X,Y) subv…
RKSimon Aug 5, 2020
f2c0423
[msan] Remove readnone and friends from call sites.
eugenis Aug 4, 2020
6780d56
[LIBOMPTARGET]Fix order of mapper data for targetDataEnd function.
alexey-bataev Aug 4, 2020
2143a90
Fix _ExtInt(1) to be a i1 in memory.
Aug 5, 2020
9a7b8b2
[clangd] Hide "swap if branch" tweak
hokein Aug 5, 2020
4f20f5e
Remove Olesen from LLVM code owners
Aug 5, 2020
b727cfe
[MLIR][LinAlg] Use AnyTypeOf for LinalgOperand for better error msg.
kumasento Aug 5, 2020
2918727
[libFuzzer] Do not link pthreads on Android.
morehouse Aug 5, 2020
9fdd0df
[mlir][nfc] Rename `promoteMemRefDescriptors` to `promoteOperands`.
pifon2a Aug 5, 2020
4062618
[flang][NFC] Unify OpenMP and OpenACC structure checker
clementval Aug 5, 2020
7ad60f6
[clang-format] fix BreakBeforeBraces.MultiLine with for each macros
Aug 5, 2020
a569a0a
[InstSimplify] add vector tests for icmp with mul nuw; NFC
rotateright Aug 5, 2020
f879c9b
[InstSimplify] fold icmp with mul nuw and constant operands
rotateright Aug 5, 2020
fcb0d81
[lldb/test] Use realpath consistently for test root file paths.
rupprecht Aug 5, 2020
e8760bb
[InstSimplify] fold icmp with mul nsw and constant operands
rotateright Aug 5, 2020
3e52667
AMDGPU: Fix verifier error with undef source producing s_bitset*
arsenm Aug 5, 2020
b1dac0c
AMDGPU: Remove leftover test
arsenm Aug 5, 2020
48378a3
[spirv] Fix bitwidth emulation for Workgroup storage class
antiagainst Aug 5, 2020
43c0c92
AMDGPU: Refactor buffer atomic intrinsic lowering
arsenm Aug 5, 2020
1d25d07
[NFC][InstCombine] Add tests for negation of old-style [n]abs, select…
LebedevRI Aug 5, 2020
f3056dc
[InstCombine] Negator: -(cond ? x : -x) --> cond ? -x : x
LebedevRI Aug 5, 2020
0d03b39
[mlir][StandardToSPIRV] Use spv.UMod for index re-calculation
antiagainst Jul 13, 2020
d3ac301
[clangd] Disable define out-of-line code action on templates
kadircet Aug 5, 2020
b0c50ef
Revert "Add libFuzzer shared object build output"
morehouse Aug 5, 2020
618db68
[clangd][NFC] Delete dead code in ExtractFunction code action
kadircet Aug 5, 2020
83eaf5d
AMDGPU: Eliminate BUFFER_ATOMIC_PK_ADD_F16 node
arsenm Aug 5, 2020
8dc4385
[Driver] Accept -fno-lto in clang-cl
aeubanks Aug 4, 2020
9e6a1e5
[NewPM][LoopRotate] Rename rotate -> loop-rotate
aeubanks Aug 5, 2020
ea7d0e2
[AMDGPU] gfx1031 target
rampitec Aug 5, 2020
105608a
[AMDGPU] Added missing gfx1031 cases to CGOpenMPRuntimeGPU.cpp
rampitec Aug 5, 2020
ec8c172
AMDGPU: Correct prolog SP initialization logic
arsenm Jul 28, 2020
7d057ef
[CUDA] Work around a bug in rint/nearbyint caused by a broken impleme…
Artem-B Aug 4, 2020
1dbac09
[lldb/test] Support git commit version ids for clang.
rupprecht Aug 5, 2020
20a568c
[Propeller]: Use a descriptive temporary symbol name for the end of t…
rlavaee Aug 5, 2020
0bcda1a
[AMDGPU] Scavenge temp reg for AGPR spill
rampitec Aug 4, 2020
40470eb
[libomptarget][NFC] Replace `%ld` with PRId64 for data of type int64_t.
Aug 5, 2020
f3b4150
[libc] Add strspn implementation and std::bitset
cgyurgyik Aug 5, 2020
41b1aef
[OpenMP] Fix `present` diagnostic for array extension
jdenny-ornl Aug 5, 2020
8c8bb12
[OpenMP] Fix `target data` exit for array extension
jdenny-ornl Aug 5, 2020
f496950
[WebAssembly] Fix types in wasm_simd128.h and add tests
tlively Aug 5, 2020
0315571
[InstCombine] add tests for icmp with mul nsw/nuw; NFC
rotateright Aug 5, 2020
c661691
[InstCombine] fold icmp with 'mul nsw/nuw' and constant operands
rotateright Aug 5, 2020
076b120
CFG: Destroy temporaries in (a,b) expression in the correct order.
zygoloid Aug 5, 2020
df46f17
[lldb] Modify the `skipIfRemote` decorator so we can skip all PExpect…
JDevlieghere Aug 5, 2020
31137b8
[lldb] Skip TestProcessConnect when running remotely
JDevlieghere Aug 5, 2020
e1de85f
Add verification for DW_AT_decl_file and DW_AT_call_file.
clayborg Jul 29, 2020
b2ab375
[mlir] use the new stateful LLVM type translator by default
ftynse Aug 5, 2020
927afdf
[lldb] Skip test_launch_simple on Windows
JDevlieghere Aug 5, 2020
13796d1
[X86] Add test case for PR47000. NFC
topperc Aug 5, 2020
08b2d0a
[X86] Disable copy elision in LowerMemArgument for scalarized vectors…
topperc Aug 5, 2020
4103f4a
[MSSA][NewPM] Handle tests with -print-memoryssa
aeubanks Aug 5, 2020
978165b
[X86] Rename mod128.ll to divmod128.ll and add test cases for sdiv/ud…
topperc Aug 5, 2020
1adc494
[CMake] Simplify CMake handling for zlib
petrhosek Apr 30, 2020
b216c80
[ELF] Allow SHF_LINK_ORDER sections to have sh_link=0
MaskRay Aug 5, 2020
820e8d8
[Analyzer][WebKit] UncountedLambdaCaptureChecker
jkorous-apple Jun 30, 2020
eb45b97
[ELF][test] Add REQUIES: x86 and -triple=x86_64 to linkorder-mixed.s
MaskRay Aug 5, 2020
279e4cf
[ELF] Fix type of ciesWithLSDA after D84610
MaskRay Aug 5, 2020
dd892a3
[gn build] Port 820e8d8656e
llvmgnsyncbot Aug 5, 2020
3937991
[mlir] [VectorOps] Add masked load/store operations to Vector dialect
aartbik Aug 5, 2020
beb9993
[MSSA] Update test with more detailed and resilient checks. [NFC]
alinas Aug 5, 2020
8b9e86f
[lld-macho] Fix errant search and replace. NFC
smeenai Aug 5, 2020
3af4039
[ELF][test] Add another -triple=x86_64 to linkorder-mixed.s
MaskRay Aug 6, 2020
fd86d67
[JumpThreading] Add a test that duplicates insts of a basic block wit…
aqjune Jul 31, 2020
9f717d7
[JumpThreading] Allow duplicating a basic block into preds when its b…
aqjune Jul 31, 2020
6d2d730
[flang] Fix compilation warning in check-directive-structure.h
tskeith Aug 6, 2020
3a538de
[lldb] Make UBSan tests remote ready
JDevlieghere Aug 6, 2020
5ddc8b4
[AMDGPU] add buffer_atomic_swap for float
ruiling Aug 4, 2020
ada4ee7
[NewPM][opt] Add more codegen passes
aeubanks Jul 29, 2020
0ee1eba
AMDGPU: Remove ATOMIC_PK_FADD
arsenm Aug 5, 2020
08063f8
"|" used when "||" was meant in SBTarget::FindFunctions
jimingham Aug 6, 2020
1c1ffa6
GetPath() returns a std::string temporary. You can't reference just …
jimingham Aug 6, 2020
633e3da
[CMake] Print the autodetected host linker version
petrhosek Aug 5, 2020
4fccdd5
[lldb] Fix bug in skipIfRosetta decorator
JDevlieghere Aug 6, 2020
ba8683f
[JITLink][MachO][AArch64] More PAGEOFF12 relocation fixes.
lhames Aug 6, 2020
9097ef8
[lldb] Remove pointless assign to found_suffix (NFC)
JDevlieghere Aug 6, 2020
bac1a08
Fix typo in test. Thanks to Andrew Ng for spotting this!
dyung Aug 6, 2020
0215ae9
[X86] Remove incomplete custom handling of i128 sdivrem/udivrem on Wi…
topperc Aug 6, 2020
92f1f1e
[Coroutines] Use to collect lifetime marker of in CoroFrame Differe…
ChuanqiXu9 Aug 6, 2020
5eedc01
[ARM, AArch64] Fix a comment typo. NFC.
mstorsjo Aug 4, 2020
f5e6fba
[AArch64] [Windows] Error out on unsupported symbol locations
mstorsjo Aug 4, 2020
fc0e8fb
[lldb][gui] truncate long lines/names if needed
llunak Aug 3, 2020
14406ca
[lldb][gui] use syntax highlighting also in gui mode
llunak Aug 4, 2020
4a8e4b5
[lldb][gui] use names for color pairs, instead of magic numbers
llunak Aug 5, 2020
504a197
[X86] Rename X86::getImpliedFeatures to X86::updateImpliedFeatures an…
topperc Aug 6, 2020
8671166
[clang-tidy] Fix bugprone-bad-signal-to-kill-thread crash when `SIGTE…
ArcsinX Aug 6, 2020
216ad2d
[clang-tidy] Fix bugprone-bad-signal-to-kill-thread crash when `SIGTE…
ArcsinX Aug 6, 2020
e150d2c
[update_cc_test_checks.py] Add test for D84511
arichardson Aug 6, 2020
8803ebc
Fix qsort() interceptor for FreeBSD
arichardson Aug 6, 2020
3b3cdcc
[lit] Remove ANSI control characters from xunit output
arichardson Aug 6, 2020
6148cca
[compiler-rt] Fix build of Sanitizer-Test_Nolibc after D80648
arichardson Aug 6, 2020
4357986
[DWARFYAML][debug_info] Pull out dwarf::FormParams from DWARFYAML::Unit.
higuoxing Aug 6, 2020
7109494
[clang][Driver] Don't hardcode --as-needed/--no-as-needed on Illumos
rorth Aug 6, 2020
664e178
[NFC][InstCombine] Add tests for comparisons between x and negation o…
LebedevRI Aug 6, 2020
5060f56
[InstCombine] (-NSW x) s> x --> x s< 0 (PR39480)
LebedevRI Aug 6, 2020
af8c645
Merge remote-tracking branch sycl-web into llvmspirv_pulldown
vladimirlaz Aug 10, 2020
7cc09b1
Merge commit master into llvmspirv_pulldown
vladimirlaz Aug 10, 2020
c7f90a0
[NFC][SYCL] Fix spacing
vladimirlaz Aug 10, 2020
dfe8c24
Fix translation of LLVM intrinsics when their args are stored
Jul 29, 2020
38ffb74
Update LLVM version from 11 to 12
svenvh Jul 16, 2020
d86685a
Add support for SPV_INTEL_arbitrary_precision_fixed_point (#653)
mlychkov Aug 7, 2020
ae7e9f7
Remove td file generation from gen_spirv.bash
svenvh Jul 15, 2020
0d1bdd0
Derive output file name from type argument
svenvh Jul 15, 2020
d0898d2
Align gen_spirv.bash with current formatting
svenvh Jul 15, 2020
483b8bc
Do not generate NameMap or isValid for SPIR-V ops
svenvh Jul 15, 2020
0559a89
Special-case builtins in gen_spirv.bash
svenvh Jul 15, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 3 additions & 0 deletions .arclint
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@
"script-and-regex.regex": "/^(?P<severity>[[:alpha:]]+)\n(?P<message>[^\n]+)\n(====|(?P<line>\\d),(?P<char>\\d)\n(?P<original>.*)>>>>\n(?P<replacement>.*)<<<<\n)$/s",
"include": [
"(\\.(cc|cpp|h)$)"
],
"exclude": [
"(^clang/test/)"
]
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ CreateSymbolInfo(const NamedDecl *ND, const SourceManager &SM,

SourceLocation Loc = SM.getExpansionLoc(ND->getLocation());
if (!Loc.isValid()) {
llvm::errs() << "Declaration " << ND->getNameAsString() << "("
llvm::errs() << "Declaration " << ND->getDeclName() << "("
<< ND->getDeclKindName()
<< ") has invalid declaration location.";
return llvm::None;
Expand Down
4 changes: 2 additions & 2 deletions clang-tools-extra/clang-move/HelperDeclRefGraph.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ void HelperDeclRGBuilder::run(
const auto *DC = Result.Nodes.getNodeAs<Decl>("dc");
assert(DC);
LLVM_DEBUG(llvm::dbgs() << "Find helper function usage: "
<< FuncRef->getDecl()->getNameAsString() << " ("
<< FuncRef->getDecl()->getDeclName() << " ("
<< FuncRef->getDecl() << ")\n");
RG->addEdge(
getOutmostClassOrFunDecl(DC->getCanonicalDecl()),
Expand All @@ -126,7 +126,7 @@ void HelperDeclRGBuilder::run(
const auto *DC = Result.Nodes.getNodeAs<Decl>("dc");
assert(DC);
LLVM_DEBUG(llvm::dbgs()
<< "Find helper class usage: " << UsedClass->getNameAsString()
<< "Find helper class usage: " << UsedClass->getDeclName()
<< " (" << UsedClass << ")\n");
RG->addEdge(getOutmostClassOrFunDecl(DC->getCanonicalDecl()), UsedClass);
}
Expand Down
12 changes: 6 additions & 6 deletions clang-tools-extra/clang-move/Move.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -675,8 +675,8 @@ void ClangMoveTool::run(const ast_matchers::MatchFinder::MatchResult &Result) {
Result.Nodes.getNodeAs<NamedDecl>("helper_decls")) {
MovedDecls.push_back(ND);
HelperDeclarations.push_back(ND);
LLVM_DEBUG(llvm::dbgs() << "Add helper : " << ND->getNameAsString() << " ("
<< ND << ")\n");
LLVM_DEBUG(llvm::dbgs()
<< "Add helper : " << ND->getDeclName() << " (" << ND << ")\n");
} else if (const auto *UD = Result.Nodes.getNodeAs<NamedDecl>("using_decl")) {
MovedDecls.push_back(UD);
}
Expand Down Expand Up @@ -735,12 +735,12 @@ void ClangMoveTool::removeDeclsInOldFiles() {
// We remove the helper declarations which are not used in the old.cc after
// moving the given declarations.
for (const auto *D : HelperDeclarations) {
LLVM_DEBUG(llvm::dbgs() << "Check helper is used: "
<< D->getNameAsString() << " (" << D << ")\n");
LLVM_DEBUG(llvm::dbgs() << "Check helper is used: " << D->getDeclName()
<< " (" << D << ")\n");
if (!UsedDecls.count(HelperDeclRGBuilder::getOutmostClassOrFunDecl(
D->getCanonicalDecl()))) {
LLVM_DEBUG(llvm::dbgs() << "Helper removed in old.cc: "
<< D->getNameAsString() << " (" << D << ")\n");
<< D->getDeclName() << " (" << D << ")\n");
RemovedDecls.push_back(D);
}
}
Expand Down Expand Up @@ -820,7 +820,7 @@ void ClangMoveTool::moveDeclsToNewFiles() {
D->getCanonicalDecl())))
continue;

LLVM_DEBUG(llvm::dbgs() << "Helper used in new.cc: " << D->getNameAsString()
LLVM_DEBUG(llvm::dbgs() << "Helper used in new.cc: " << D->getDeclName()
<< " " << D << "\n");
ActualNewCCDecls.push_back(D);
}
Expand Down
39 changes: 30 additions & 9 deletions clang-tools-extra/clang-tidy/ClangTidyCheck.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/Error.h"
#include "llvm/Support/WithColor.h"
#include "llvm/Support/raw_ostream.h"

namespace clang {
Expand Down Expand Up @@ -126,7 +127,7 @@ bool ClangTidyCheck::OptionsView::get<bool>(StringRef LocalName,
llvm::Expected<bool> ValueOr = get<bool>(LocalName);
if (ValueOr)
return *ValueOr;
logErrToStdErr(ValueOr.takeError());
logIfOptionParsingError(ValueOr.takeError());
return Default;
}

Expand All @@ -145,7 +146,7 @@ bool ClangTidyCheck::OptionsView::getLocalOrGlobal<bool>(StringRef LocalName,
llvm::Expected<bool> ValueOr = getLocalOrGlobal<bool>(LocalName);
if (ValueOr)
return *ValueOr;
logErrToStdErr(ValueOr.takeError());
logIfOptionParsingError(ValueOr.takeError());
return Default;
}

Expand Down Expand Up @@ -204,13 +205,33 @@ llvm::Expected<int64_t> ClangTidyCheck::OptionsView::getEnumInt(
Iter->getValue().Value);
}

void ClangTidyCheck::OptionsView::logErrToStdErr(llvm::Error &&Err) {
llvm::logAllUnhandledErrors(
llvm::handleErrors(std::move(Err),
[](const MissingOptionError &) -> llvm::Error {
return llvm::Error::success();
}),
llvm::errs(), "warning: ");
void ClangTidyCheck::OptionsView::logIfOptionParsingError(llvm::Error &&Err) {
if (auto RemainingErrors =
llvm::handleErrors(std::move(Err), [](const MissingOptionError &) {}))
llvm::logAllUnhandledErrors(std::move(RemainingErrors),
llvm::WithColor::warning());
}

template <>
Optional<std::string> ClangTidyCheck::OptionsView::getOptional<std::string>(
StringRef LocalName) const {
if (auto ValueOr = get(LocalName))
return *ValueOr;
else
consumeError(ValueOr.takeError());
return llvm::None;
}

template <>
Optional<std::string>
ClangTidyCheck::OptionsView::getOptionalLocalOrGlobal<std::string>(
StringRef LocalName) const {
if (auto ValueOr = getLocalOrGlobal(LocalName))
return *ValueOr;
else
consumeError(ValueOr.takeError());
return llvm::None;
}

} // namespace tidy
} // namespace clang
49 changes: 44 additions & 5 deletions clang-tools-extra/clang-tidy/ClangTidyCheck.h
Original file line number Diff line number Diff line change
Expand Up @@ -268,7 +268,7 @@ class ClangTidyCheck : public ast_matchers::MatchFinder::MatchCallback {
if (llvm::Expected<T> ValueOr = get<T>(LocalName))
return *ValueOr;
else
logErrToStdErr(ValueOr.takeError());
logIfOptionParsingError(ValueOr.takeError());
return Default;
}

Expand Down Expand Up @@ -314,7 +314,7 @@ class ClangTidyCheck : public ast_matchers::MatchFinder::MatchCallback {
if (llvm::Expected<T> ValueOr = getLocalOrGlobal<T>(LocalName))
return *ValueOr;
else
logErrToStdErr(ValueOr.takeError());
logIfOptionParsingError(ValueOr.takeError());
return Default;
}

Expand Down Expand Up @@ -353,7 +353,7 @@ class ClangTidyCheck : public ast_matchers::MatchFinder::MatchCallback {
if (auto ValueOr = get<T>(LocalName, IgnoreCase))
return *ValueOr;
else
logErrToStdErr(ValueOr.takeError());
logIfOptionParsingError(ValueOr.takeError());
return Default;
}

Expand Down Expand Up @@ -395,10 +395,35 @@ class ClangTidyCheck : public ast_matchers::MatchFinder::MatchCallback {
if (auto ValueOr = getLocalOrGlobal<T>(LocalName, IgnoreCase))
return *ValueOr;
else
logErrToStdErr(ValueOr.takeError());
logIfOptionParsingError(ValueOr.takeError());
return Default;
}

/// Returns the value for the option \p LocalName represented as a ``T``.
/// If the option is missing returns None, if the option can't be parsed
/// as a ``T``, log that to stderr and return None.
template <typename T = std::string>
llvm::Optional<T> getOptional(StringRef LocalName) const {
if (auto ValueOr = get<T>(LocalName))
return *ValueOr;
else
logIfOptionParsingError(ValueOr.takeError());
return llvm::None;
}

/// Returns the value for the local or global option \p LocalName
/// represented as a ``T``.
/// If the option is missing returns None, if the
/// option can't be parsed as a ``T``, log that to stderr and return None.
template <typename T = std::string>
llvm::Optional<T> getOptionalLocalOrGlobal(StringRef LocalName) const {
if (auto ValueOr = getLocalOrGlobal<T>(LocalName))
return *ValueOr;
else
logIfOptionParsingError(ValueOr.takeError());
return llvm::None;
}

/// Stores an option with the check-local name \p LocalName with
/// string value \p Value to \p Options.
void store(ClangTidyOptions::OptionMap &Options, StringRef LocalName,
Expand Down Expand Up @@ -456,7 +481,8 @@ class ClangTidyCheck : public ast_matchers::MatchFinder::MatchCallback {
void storeInt(ClangTidyOptions::OptionMap &Options, StringRef LocalName,
int64_t Value) const;

static void logErrToStdErr(llvm::Error &&Err);
/// Logs an Error to stderr if a \p Err is not a MissingOptionError.
static void logIfOptionParsingError(llvm::Error &&Err);

std::string NamePrefix;
const ClangTidyOptions::OptionMap &CheckOptions;
Expand Down Expand Up @@ -524,6 +550,19 @@ void ClangTidyCheck::OptionsView::store<bool>(
ClangTidyOptions::OptionMap &Options, StringRef LocalName,
bool Value) const;

/// Returns the value for the option \p LocalName.
/// If the option is missing returns None.
template <>
Optional<std::string> ClangTidyCheck::OptionsView::getOptional<std::string>(
StringRef LocalName) const;

/// Returns the value for the local or global option \p LocalName.
/// If the option is missing returns None.
template <>
Optional<std::string>
ClangTidyCheck::OptionsView::getOptionalLocalOrGlobal<std::string>(
StringRef LocalName) const;

} // namespace tidy
} // namespace clang

Expand Down
2 changes: 1 addition & 1 deletion clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ struct NOptionMap {
NOptionMap(IO &, const ClangTidyOptions::OptionMap &OptionMap) {
Options.reserve(OptionMap.size());
for (const auto &KeyValue : OptionMap)
Options.emplace_back(KeyValue.getKey(), KeyValue.getValue().Value);
Options.emplace_back(std::string(KeyValue.getKey()), KeyValue.getValue().Value);
}
ClangTidyOptions::OptionMap denormalize(IO &) {
ClangTidyOptions::OptionMap Map;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,14 +30,17 @@ static Preprocessor *PP;

void BadSignalToKillThreadCheck::check(const MatchFinder::MatchResult &Result) {
const auto IsSigterm = [](const auto &KeyValue) -> bool {
return KeyValue.first->getName() == "SIGTERM";
return KeyValue.first->getName() == "SIGTERM" &&
KeyValue.first->hasMacroDefinition();
};
const auto TryExpandAsInteger =
[](Preprocessor::macro_iterator It) -> Optional<unsigned> {
if (It == PP->macro_end())
return llvm::None;
const MacroInfo *MI = PP->getMacroInfo(It->first);
const Token &T = MI->tokens().back();
if (!T.isLiteral())
return llvm::None;
StringRef ValueStr = StringRef(T.getLiteralData(), T.getLength());

llvm::APInt IntValue;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,53 +20,68 @@ void BoolPointerImplicitConversionCheck::registerMatchers(MatchFinder *Finder) {
Finder->addMatcher(
traverse(
ast_type_traits::TK_AsIs,
ifStmt(hasCondition(findAll(implicitCastExpr(
unless(hasParent(unaryOperator(hasOperatorName("!")))),
hasSourceExpression(expr(
hasType(pointerType(pointee(booleanType()))),
ignoringParenImpCasts(declRefExpr().bind("expr")))),
hasCastKind(CK_PointerToBoolean)))),
unless(isInTemplateInstantiation()))
ifStmt(
hasCondition(findAll(implicitCastExpr(
unless(hasParent(unaryOperator(hasOperatorName("!")))),
hasSourceExpression(expr(
hasType(pointerType(pointee(booleanType()))),
ignoringParenImpCasts(anyOf(declRefExpr().bind("expr"),
memberExpr().bind("expr"))))),
hasCastKind(CK_PointerToBoolean)))),
unless(isInTemplateInstantiation()))
.bind("if")),
this);
}

void BoolPointerImplicitConversionCheck::check(
const MatchFinder::MatchResult &Result) {
auto *If = Result.Nodes.getNodeAs<IfStmt>("if");
auto *Var = Result.Nodes.getNodeAs<DeclRefExpr>("expr");

static void checkImpl(const MatchFinder::MatchResult &Result, const Expr *Ref,
const IfStmt *If,
const ast_matchers::internal::Matcher<Expr> &RefMatcher,
ClangTidyCheck &Check) {
// Ignore macros.
if (Var->getBeginLoc().isMacroID())
if (Ref->getBeginLoc().isMacroID())
return;

// Only allow variable accesses for now, no function calls or member exprs.
// Only allow variable accesses and member exprs for now, no function calls.
// Check that we don't dereference the variable anywhere within the if. This
// avoids false positives for checks of the pointer for nullptr before it is
// dereferenced. If there is a dereferencing operator on this variable don't
// emit a diagnostic. Also ignore array subscripts.
const Decl *D = Var->getDecl();
auto DeclRef = ignoringParenImpCasts(declRefExpr(to(equalsNode(D))));
if (!match(findAll(
unaryOperator(hasOperatorName("*"), hasUnaryOperand(DeclRef))),
if (!match(findAll(unaryOperator(hasOperatorName("*"),
hasUnaryOperand(RefMatcher))),
*If, *Result.Context)
.empty() ||
!match(findAll(arraySubscriptExpr(hasBase(DeclRef))), *If,
!match(findAll(arraySubscriptExpr(hasBase(RefMatcher))), *If,
*Result.Context)
.empty() ||
// FIXME: We should still warn if the paremater is implicitly converted to
// bool.
!match(findAll(callExpr(hasAnyArgument(ignoringParenImpCasts(DeclRef)))),
*If, *Result.Context)
!match(
findAll(callExpr(hasAnyArgument(ignoringParenImpCasts(RefMatcher)))),
*If, *Result.Context)
.empty() ||
!match(findAll(cxxDeleteExpr(has(ignoringParenImpCasts(expr(DeclRef))))),
*If, *Result.Context)
!match(
findAll(cxxDeleteExpr(has(ignoringParenImpCasts(expr(RefMatcher))))),
*If, *Result.Context)
.empty())
return;

diag(Var->getBeginLoc(), "dubious check of 'bool *' against 'nullptr', did "
"you mean to dereference it?")
<< FixItHint::CreateInsertion(Var->getBeginLoc(), "*");
Check.diag(Ref->getBeginLoc(),
"dubious check of 'bool *' against 'nullptr', did "
"you mean to dereference it?")
<< FixItHint::CreateInsertion(Ref->getBeginLoc(), "*");
}

void BoolPointerImplicitConversionCheck::check(
const MatchFinder::MatchResult &Result) {
const auto *If = Result.Nodes.getNodeAs<IfStmt>("if");
if (const auto *E = Result.Nodes.getNodeAs<Expr>("expr")) {
const Decl *D = isa<DeclRefExpr>(E) ? cast<DeclRefExpr>(E)->getDecl()
: cast<MemberExpr>(E)->getMemberDecl();
const auto M =
ignoringParenImpCasts(anyOf(declRefExpr(to(equalsNode(D))),
memberExpr(hasDeclaration(equalsNode(D)))));
checkImpl(Result, E, If, M, *this);
}
}

} // namespace bugprone
Expand Down
Loading