SuccessChanges

Summary

  1. [ASTUnit] Attempt to unbreak Windows buildbots after r366448
  2. Minor styling fix. NFC.
  3. Revert "[RISCV] Hard float ABI support" r366450 The commit was missing a few hunks. Will fix and recommit.
  4. Revert r366449: [CrossTU] Add a function to retrieve original source location. Reason: the commit breaks layering by adding a dependency on ASTUnit (which is inside clangFrontend) from the ASTImporter (which is inside clangAST).
  5. [RISCV] Hard float ABI support The RISC-V hard float calling convention requires the frontend to: * Detect cases where, once "flattened", a struct can be passed using int+fp or fp+fp registers under the hard float ABI and coerce to the appropriate type(s) * Track usage of GPRs and FPRs in order to gate the above, and to determine when signext/zeroext attributes must be added to integer scalars This patch attempts to do this in compliance with the documented ABI, and uses ABIArgInfo::CoerceAndExpand in order to do this. @rjmccall, as author of that code I've tagged you as reviewer for initial feedback on my usage. Note that a previous version of the ABI indicated that when passing an int+fp struct using a GPR+FPR, the int would need to be sign or zero-extended appropriately. GCC never did this and the ABI was changed, which makes life easier as ABIArgInfo::CoerceAndExpand can't currently handle sign/zero-extension attributes. Differential Revision: https://reviews.llvm.org/D60456
  6. [CrossTU] Add a function to retrieve original source location. Summary: A new function will be added to get the original SourceLocation for a SourceLocation that was imported as result of getCrossTUDefinition. The returned SourceLocation is in the context of the (original) SourceManager for the original source file. Additionally the ASTUnit object for that source file is returned. This is needed to get a SourceManager to operate on with the returned source location. The new function works if multiple different source files are loaded with the same CrossTU context. This patch can be treated as part of a bigger change that is needed to improve macro expansion handliong at plist generation. Reviewers: martong, shafik, a_sidorin, xazax.hun Reviewed By: martong Subscribers: rnkovacs, dkrupp, Szelethus, gamesh411, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D64554
  7. [ASTUnit] Fix a regression in cached completions Summary: After r345152 cached completions started adding namespaces after nested name specifiers, e.g. in `some_name::^` The CCC_Symbol indicates the completed item cannot be a namespace (it is described as being "a type, a function or a variable" in the comments). Therefore, 'nested specifier' completions should only be added from cache when the context is CCC_SymbolOrNewName (which roughly seems to indicate that a nested name specifier is allowed). Fixes https://bugs.llvm.org/show_bug.cgi?id=42646 Reviewers: kadircet, sammccall Reviewed By: kadircet, sammccall Subscribers: arphaman, nik, sammccall, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D64918
  8. [CMake] Don't set Python_ADDITIONAL_VERSIONS Until recently, Python_ADDITIONAL_VERSIONS was used to limit LLVM's Python support to 2.7. Now that both LLVM and LLDB both support Python 3, there's no longer a need to put an arbitrary limit on this. However, instead of removing the variable, r365692 expanded the list, which has the (presumably unintentional) side-effect of expression preference for Python 3. Instead, as Michal proposed in the original code review, we should just not set the list at all, and let CMake pick whatever Python interpreter you have in your path. This patch removes the Python_ADDITIONAL_VERSIONS variable in llvm, clang and lld. I've also updated the docs with the default behavior and how to force a different Python version to be used. Differential revision: https://reviews.llvm.org/D64894
  9. Revert "[DebugInfo] Generate fixups as emitting DWARF .debug_frame/.eh_frame." This reverts commit 17e3cbf5fe656483d9016d0ba9e1d0cd8629379e.
  10. [DebugInfo] Generate fixups as emitting DWARF .debug_frame/.eh_frame. It is necessary to generate fixups in .debug_frame or .eh_frame as relaxation is enabled due to the address delta may be changed after relaxation. There is an opcode with 6-bits data in debug frame encoding. So, we also need 6-bits fixup types. Differential Revision: https://reviews.llvm.org/D58335
  11. [X86] EltsFromConsecutiveLoads - support common source loads This patch enables us to find the source loads for each element, splitting them into a Load and ByteOffset, and attempts to recognise consecutive loads that are in fact from the same source load. A helper function, findEltLoadSrc, recurses to find a LoadSDNode and determines the element's byte offset within it. When attempting to match consecutive loads, byte offsetted loads then attempt to matched against a previous load that has already been confirmed to be a consecutive match. Next step towards PR16739 - after this we just need to account for shuffling/repeated elements to create a vector load + shuffle. Differential Revision: https://reviews.llvm.org/D64551
  12. [analyzer] Add CTU user docs Reviewers: dkrupp, a_sidorin, Szelethus, NoQ Subscribers: whisperity, xazax.hun, baloghadamsoftware, szepet, rnkovacs, a.sidorin, mikhail.ramalho, donat.nagy, gamesh411, Charusso, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D64801
  13. [OPENMP][NVPTX]Mark barrier functions calls as convergent. Added convergent attribute to the barrier functions calls for correct optimizations.
  14. [DAGCombine] Pull getSubVectorSrc helper out of narrowInsertExtractVectorBinOp. NFCI. NFC step towards reusing this in other EXTRACT_SUBVECTOR combines.
  15. [FileCheck] Fix numeric variable redefinition Summary: Commit r365249 changed usage of FileCheckNumericVariable to have one instance of that class per variable as opposed to one instance per definition of a given variable as was done before. However, it retained the safety check in setValue that it should only be called with the variable unset, even after r365625. However this causes assert failure when a non-pseudo variable is being redefined. And while redefinition of @LINE at each CHECK line work in the general case, it caused problem when a substitution failed (fixed in r365624) and still causes problem when a CHECK line does not match since @LINE's value is cleared after substitutions in match() happened but printSubstitutions also attempts a substitution. This commit solves the root of the problem by changing setValue to set a new value regardless of whether a value was set or not, thus fixing all the aforementioned issues. Reviewers: jhenderson, chandlerc, jdenny, probinson, grimar, arichardson, rnk Subscribers: hiraditya, llvm-commits, probinson, dblaikie, grimar, arichardson, tra, rnk, kristina, hfinkel, rogfer01, JonChesterfield Tags: #llvm Differential Revision: https://reviews.llvm.org/D64882
  16. [x86] try harder to form LEA from ADD to avoid flag conflicts (PR40483) LEA doesn't affect flags, so use it more liberally to replace an ADD when we know that the ADD operands affect flags. In the motivating example from PR40483: https://bugs.llvm.org/show_bug.cgi?id=40483 ...this lets us avoid duplicating a math op just to avoid flag conflict. As mentioned in the TODO comments, this heuristic can be extended to fire more often if that leads to more improvements. Differential Revision: https://reviews.llvm.org/D64707
  17. [llvm-readelf] - Remove the precompiled binary from gnu-hash-symbols.test I am working on https://bugs.llvm.org/show_bug.cgi?id=42622 and this patch reworks the gnu-hash-symbols.test so that it will be easier to expand it with x86_64 case. Differential revision: https://reviews.llvm.org/D64750
  18. Revert r366422: [OpenCL] Improve destructor support in C++ for OpenCL Reason: this commit causes crashes in the clang compiler when building LLVM Support with libc++, see https://bugs.llvm.org/show_bug.cgi?id=42665 for details.
  19. Bump the trunk version to 10.0.0svn and clear the release notes.
  20. [ARM][DAGCOMBINE][FIX] PerformVMOVRRDCombine Summary: PerformVMOVRRDCombine ommits adding a offset of 4 to the PointerInfo, when converting a f64 = load[M] to {i32, i32} = {load[M], load[M + 4]} Which would allow the machine scheduller to break dependencies with the second load. - pr42638 Reviewers: eli.friedman, dmgreen, ostannard Reviewed By: ostannard Subscribers: ostannard, javed.absar, kristof.beyls, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D64870
  21. [OpenCL] Improve destructor support in C++ for OpenCL Summary: This patch does mainly three things: 1. It fixes a false positive error detection in Sema that is similar to D62156. The error happens when explicitly calling an overloaded destructor for different address spaces. 2. It selects the correct destructor when multiple overloads for address spaces are available. 3. It inserts the expected address space cast when invoking a destructor, if needed, and therefore fixes a crash due to the unmet assertion in llvm::CastInst::Create. The following is a reproducer of the three issues: struct MyType { ~MyType() {} ~MyType() __constant {} }; __constant MyType myGlobal{}; kernel void foo() { myGlobal.~MyType(); // 1 and 2. // 1. error: cannot initialize object parameter of type // '__generic MyType' with an expression of type '__constant MyType' // 2. error: no matching member function for call to '~MyType' } kernel void bar() { // 3. The implicit call to the destructor crashes due to: // Assertion `castIsValid(op, S, Ty) && "Invalid cast!"' failed. // in llvm::CastInst::Create. MyType myLocal; } The added test depends on D62413 and covers a few more things than the above reproducer. Subscribers: yaxunl, Anastasia, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D64569
  22. [OpenCL] Update comments/diagnostics to refer to C++ for OpenCL Clang doesn't implement OpenCL C++, change the comments to reflect that. Differential Revision: https://reviews.llvm.org/D64867
  23. [SCEV] add no wrap flag for SCEVAddExpr. Differential Revision: https://reviews.llvm.org/D64868
  24. [OpenCL][PR42033] Fix addr space deduction with template parameters If dependent types appear in pointers or references we allow addr space deduction because the addr space in template argument will belong to the pointee and not the pointer or reference itself. We also don't diagnose addr space on a function return type after template instantiation. If any addr space for the return type was provided on a template parameter this will be diagnosed during the parsing of template definition. Differential Revision: https://reviews.llvm.org/D62584
  25. [RISCV] Reset NoPHIS MachineFunctionProperty in emitSelectPseudo We insered PHIS were there were none before, so the property must be reset. This error was found on an EXPENSIVE_CHECKS build.
  26. [LoopInfo] Use early return in branch weight update functions. NFC.
  27. [RISCV][DebugInfo] Fix dwarf-riscv-relocs.ll test on Windows Windows sees DW_AT_decl_file (".\dwarf-riscv-relocs.c") while Linux sees DW_AT_decl_file ("./dwarf-riscv-relocs.c"). This fixes a failure introduced in rL366402.
  28. [CodeComplete] Fix ASTUnit cached completion of macros from preamble, broken in r342528 Summary: The problem is the default LoadExternal with no completer, which happens when loading global results. Reviewers: ilya-biryukov, nik Subscribers: arphaman, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D64864
  29. [NFC][PowerPC] Add the test to test the pass block-placement
  30. [PowerPC][Clang] Remove use of malloc in mm_malloc Remove dependency of malloc in implementation of mm_malloc function in PowerPC intrinsics and alignment assumption on glibc. Reviewed By: Hal Finkel Differential Revision: https://reviews.llvm.org/D64850
  31. [X86] Disable combineConcatVectors for vXi1 vectors. I'm not convinced the code this calls is properly vetted for vXi1 vectors. Experimental vector widening legalization testing for D55251 is now hitting an assertion failure inside EltsFromConsecutiveLoads. This is occurring from a v2i1 load having a store size different than its VT size. Hopefully this commit will keep such issues from happening.
  32. Fix typo in programmer's manual cantFile -> cantFail
  33. [DWARF][RISCV] Add support for RISC-V relocations needed for debug info When code relaxation is enabled many RISC-V fixups are not resolved but instead relocations are emitted. This happens even for DWARF debug sections. Therefore, to properly support the parsing of DWARF debug info we need to be able to resolve RISC-V relocations. This patch adds: * Support for RISC-V relocations in RelocationResolver * DWARF support for two relocations per object file offset * DWARF changes to support relocations in more DIE fields The two relocations per offset change is needed because some RISC-V relocations (used for label differences) come in pairs. Relocations can also be emitted for DWARF fields where relocations were not yet evaluated. Adding relocation support for some of these fields is essencial. On the other hand, LLVM currently emits RISC-V relocations for fixups that could be safely evaluated, since they can never be affected by code relaxations. This patch also adds relocation support for the fields affected by those extraneous relocations (the DWARF unit entry Length, and the DWARF debug line entry TotalLength and PrologueLength), for testing purposes. Differential Revision: https://reviews.llvm.org/D62062 Patch by Luís Marques.
Revision 366457 by ibiryukov:
[ASTUnit] Attempt to unbreak Windows buildbots after r366448
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/test/Index/complete-qualified-cached.cpp (diff)clang.src/test/Index/complete-qualified-cached.cpp
Revision 366456 by hliao:
Minor styling fix. NFC.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/unittests/CodeGen/GlobalISel/LegalizerHelperTest.cpp (diff)llvm.src/unittests/CodeGen/GlobalISel/LegalizerHelperTest.cpp
Revision 366454 by asb:
Revert "[RISCV] Hard float ABI support" r366450

The commit was missing a few hunks. Will fix and recommit.
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/lib/Basic/Targets/RISCV.cpp (diff)clang.src/lib/Basic/Targets/RISCV.cpp
The file was modified/cfe/trunk/lib/Basic/Targets/RISCV.h (diff)clang.src/lib/Basic/Targets/RISCV.h
The file was modified/cfe/trunk/lib/CodeGen/TargetInfo.cpp (diff)clang.src/lib/CodeGen/TargetInfo.cpp
The file was modified/cfe/trunk/test/CodeGen/riscv32-ilp32-ilp32f-abi.c (diff)clang.src/test/CodeGen/riscv32-ilp32-ilp32f-abi.c
The file was modified/cfe/trunk/test/CodeGen/riscv32-ilp32-ilp32f-ilp32d-abi.c (diff)clang.src/test/CodeGen/riscv32-ilp32-ilp32f-ilp32d-abi.c
The file was removed/cfe/trunk/test/CodeGen/riscv32-ilp32d-abi.cclang.src/test/CodeGen/riscv32-ilp32d-abi.c
The file was removed/cfe/trunk/test/CodeGen/riscv32-ilp32f-abi.cclang.src/test/CodeGen/riscv32-ilp32f-abi.c
The file was removed/cfe/trunk/test/CodeGen/riscv32-ilp32f-ilp32d-abi.cclang.src/test/CodeGen/riscv32-ilp32f-ilp32d-abi.c
The file was modified/cfe/trunk/test/CodeGen/riscv64-lp64-lp64f-abi.c (diff)clang.src/test/CodeGen/riscv64-lp64-lp64f-abi.c
The file was modified/cfe/trunk/test/CodeGen/riscv64-lp64-lp64f-lp64d-abi.c (diff)clang.src/test/CodeGen/riscv64-lp64-lp64f-lp64d-abi.c
The file was removed/cfe/trunk/test/CodeGen/riscv64-lp64d-abi.cclang.src/test/CodeGen/riscv64-lp64d-abi.c
The file was removed/cfe/trunk/test/CodeGen/riscv64-lp64f-lp64d-abi.cclang.src/test/CodeGen/riscv64-lp64f-lp64d-abi.c
The file was modified/cfe/trunk/test/Preprocessor/riscv-target-features.c (diff)clang.src/test/Preprocessor/riscv-target-features.c
Revision 366453 by ibiryukov:
Revert r366449: [CrossTU] Add a function to retrieve original source location.

Reason: the commit breaks layering by adding a dependency on ASTUnit
(which is inside clangFrontend) from the ASTImporter (which is inside
clangAST).
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/include/clang/AST/ASTImporter.h (diff)clang.src/include/clang/AST/ASTImporter.h
The file was modified/cfe/trunk/include/clang/AST/ASTImporterSharedState.h (diff)clang.src/include/clang/AST/ASTImporterSharedState.h
The file was modified/cfe/trunk/include/clang/CrossTU/CrossTranslationUnit.h (diff)clang.src/include/clang/CrossTU/CrossTranslationUnit.h
The file was modified/cfe/trunk/lib/AST/ASTImporter.cpp (diff)clang.src/lib/AST/ASTImporter.cpp
The file was modified/cfe/trunk/lib/CrossTU/CrossTranslationUnit.cpp (diff)clang.src/lib/CrossTU/CrossTranslationUnit.cpp
The file was modified/cfe/trunk/unittests/CrossTU/CrossTranslationUnitTest.cpp (diff)clang.src/unittests/CrossTU/CrossTranslationUnitTest.cpp
Revision 366450 by asb:
[RISCV] Hard float ABI support

The RISC-V hard float calling convention requires the frontend to:

* Detect cases where, once "flattened", a struct can be passed using
int+fp or fp+fp registers under the hard float ABI and coerce to the
appropriate type(s) * Track usage of GPRs and FPRs in order to gate the
above, and to
determine when signext/zeroext attributes must be added to integer
scalars

This patch attempts to do this in compliance with the documented ABI,
and uses ABIArgInfo::CoerceAndExpand in order to do this. @rjmccall, as
author of that code I've tagged you as reviewer for initial feedback on
my usage.

Note that a previous version of the ABI indicated that when passing an
int+fp struct using a GPR+FPR, the int would need to be sign or
zero-extended appropriately. GCC never did this and the ABI was changed,
which makes life easier as ABIArgInfo::CoerceAndExpand can't currently
handle sign/zero-extension attributes.

Differential Revision: https://reviews.llvm.org/D60456
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/lib/Basic/Targets/RISCV.cpp (diff)clang.src/lib/Basic/Targets/RISCV.cpp
The file was modified/cfe/trunk/lib/Basic/Targets/RISCV.h (diff)clang.src/lib/Basic/Targets/RISCV.h
The file was modified/cfe/trunk/lib/CodeGen/TargetInfo.cpp (diff)clang.src/lib/CodeGen/TargetInfo.cpp
The file was modified/cfe/trunk/test/CodeGen/riscv32-ilp32-ilp32f-abi.c (diff)clang.src/test/CodeGen/riscv32-ilp32-ilp32f-abi.c
The file was modified/cfe/trunk/test/CodeGen/riscv32-ilp32-ilp32f-ilp32d-abi.c (diff)clang.src/test/CodeGen/riscv32-ilp32-ilp32f-ilp32d-abi.c
The file was added/cfe/trunk/test/CodeGen/riscv32-ilp32d-abi.cclang.src/test/CodeGen/riscv32-ilp32d-abi.c
The file was added/cfe/trunk/test/CodeGen/riscv32-ilp32f-abi.cclang.src/test/CodeGen/riscv32-ilp32f-abi.c
The file was added/cfe/trunk/test/CodeGen/riscv32-ilp32f-ilp32d-abi.cclang.src/test/CodeGen/riscv32-ilp32f-ilp32d-abi.c
The file was modified/cfe/trunk/test/CodeGen/riscv64-lp64-lp64f-abi.c (diff)clang.src/test/CodeGen/riscv64-lp64-lp64f-abi.c
The file was modified/cfe/trunk/test/CodeGen/riscv64-lp64-lp64f-lp64d-abi.c (diff)clang.src/test/CodeGen/riscv64-lp64-lp64f-lp64d-abi.c
The file was added/cfe/trunk/test/CodeGen/riscv64-lp64d-abi.cclang.src/test/CodeGen/riscv64-lp64d-abi.c
The file was added/cfe/trunk/test/CodeGen/riscv64-lp64f-lp64d-abi.cclang.src/test/CodeGen/riscv64-lp64f-lp64d-abi.c
The file was modified/cfe/trunk/test/Preprocessor/riscv-target-features.c (diff)clang.src/test/Preprocessor/riscv-target-features.c
Revision 366449 by balazske:
[CrossTU] Add a function to retrieve original source location.

Summary:
A new function will be added to get the original SourceLocation
for a SourceLocation that was imported as result of getCrossTUDefinition.
The returned SourceLocation is in the context of the (original)
SourceManager for the original source file. Additionally the
ASTUnit object for that source file is returned. This is needed
to get a SourceManager to operate on with the returned source location.

The new function works if multiple different source files are loaded
with the same CrossTU context.

This patch can be treated as part of a bigger change that is needed to
improve macro expansion handliong at plist generation.

Reviewers: martong, shafik, a_sidorin, xazax.hun

Reviewed By: martong

Subscribers: rnkovacs, dkrupp, Szelethus, gamesh411, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D64554
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/include/clang/AST/ASTImporter.h (diff)clang.src/include/clang/AST/ASTImporter.h
The file was modified/cfe/trunk/include/clang/AST/ASTImporterSharedState.h (diff)clang.src/include/clang/AST/ASTImporterSharedState.h
The file was modified/cfe/trunk/include/clang/CrossTU/CrossTranslationUnit.h (diff)clang.src/include/clang/CrossTU/CrossTranslationUnit.h
The file was modified/cfe/trunk/lib/AST/ASTImporter.cpp (diff)clang.src/lib/AST/ASTImporter.cpp
The file was modified/cfe/trunk/lib/CrossTU/CrossTranslationUnit.cpp (diff)clang.src/lib/CrossTU/CrossTranslationUnit.cpp
The file was modified/cfe/trunk/unittests/CrossTU/CrossTranslationUnitTest.cpp (diff)clang.src/unittests/CrossTU/CrossTranslationUnitTest.cpp
Revision 366448 by ibiryukov:
[ASTUnit] Fix a regression in cached completions

Summary:
After r345152 cached completions started adding namespaces after
nested name specifiers, e.g. in `some_name::^`

The CCC_Symbol indicates the completed item cannot be a namespace (it is
described as being "a type, a function or a variable" in the comments).

Therefore, 'nested specifier' completions should only be added from cache
when the context is CCC_SymbolOrNewName (which roughly seems to indicate
that a nested name specifier is allowed).

Fixes https://bugs.llvm.org/show_bug.cgi?id=42646

Reviewers: kadircet, sammccall

Reviewed By: kadircet, sammccall

Subscribers: arphaman, nik, sammccall, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D64918
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/lib/Frontend/ASTUnit.cpp (diff)clang.src/lib/Frontend/ASTUnit.cpp
The file was added/cfe/trunk/test/Index/complete-qualified-cached.cppclang.src/test/Index/complete-qualified-cached.cpp
Revision 366447 by Jonas Devlieghere:
[CMake] Don't set Python_ADDITIONAL_VERSIONS

Until recently, Python_ADDITIONAL_VERSIONS was used to limit LLVM's
Python support to 2.7. Now that both LLVM and LLDB both support Python
3, there's no longer a need to put an arbitrary limit on this.

However, instead of removing the variable, r365692 expanded the list,
which has the (presumably unintentional) side-effect of expression
preference for Python 3.

Instead, as Michal proposed in the original code review, we should just
not set the list at all, and let CMake pick whatever Python interpreter
you have in your path.

This patch removes the Python_ADDITIONAL_VERSIONS variable in llvm,
clang and lld. I've also updated the docs with the default behavior and
how to force a different Python version to be used.

Differential revision: https://reviews.llvm.org/D64894
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/CMakeLists.txt (diff)clang.src/CMakeLists.txt
The file was modified/compiler-rt/trunk/CMakeLists.txt (diff)N/A
The file was modified/lld/trunk/CMakeLists.txt (diff)N/A
The file was modified/llvm/trunk/CMakeLists.txt (diff)llvm.src/CMakeLists.txt
The file was modified/llvm/trunk/docs/GettingStarted.rst (diff)llvm.src/docs/GettingStarted.rst
Revision 366444 by hsiangkai:
Revert "[DebugInfo] Generate fixups as emitting DWARF .debug_frame/.eh_frame."

This reverts commit 17e3cbf5fe656483d9016d0ba9e1d0cd8629379e.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h (diff)llvm.src/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h
The file was modified/llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFObject.h (diff)llvm.src/include/llvm/DebugInfo/DWARF/DWARFObject.h
The file was modified/llvm/trunk/include/llvm/MC/MCDwarf.h (diff)llvm.src/include/llvm/MC/MCDwarf.h
The file was modified/llvm/trunk/include/llvm/MC/MCFixup.h (diff)llvm.src/include/llvm/MC/MCFixup.h
The file was modified/llvm/trunk/include/llvm/MC/MCFragment.h (diff)llvm.src/include/llvm/MC/MCFragment.h
The file was modified/llvm/trunk/lib/DebugInfo/DWARF/DWARFContext.cpp (diff)llvm.src/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was modified/llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugFrame.cpp (diff)llvm.src/lib/DebugInfo/DWARF/DWARFDebugFrame.cpp
The file was modified/llvm/trunk/lib/MC/MCAsmBackend.cpp (diff)llvm.src/lib/MC/MCAsmBackend.cpp
The file was modified/llvm/trunk/lib/MC/MCAssembler.cpp (diff)llvm.src/lib/MC/MCAssembler.cpp
The file was modified/llvm/trunk/lib/MC/MCDwarf.cpp (diff)llvm.src/lib/MC/MCDwarf.cpp
The file was modified/llvm/trunk/lib/Object/RelocationResolver.cpp (diff)llvm.src/lib/Object/RelocationResolver.cpp
The file was modified/llvm/trunk/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp (diff)llvm.src/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
The file was modified/llvm/trunk/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp (diff)llvm.src/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
The file was modified/llvm/trunk/test/CodeGen/RISCV/fixups-relax-diff.ll (diff)llvm.src/test/CodeGen/RISCV/fixups-relax-diff.ll
The file was modified/llvm/trunk/test/DebugInfo/RISCV/dwarf-riscv-relocs.ll (diff)llvm.src/test/DebugInfo/RISCV/dwarf-riscv-relocs.ll
The file was removed/llvm/trunk/test/DebugInfo/RISCV/relax-debug-frame.llllvm.src/test/DebugInfo/RISCV/relax-debug-frame.ll
The file was modified/llvm/trunk/test/MC/RISCV/fde-reloc.s (diff)llvm.src/test/MC/RISCV/fde-reloc.s
The file was modified/llvm/trunk/tools/dsymutil/DwarfLinker.cpp (diff)llvm.src/tools/dsymutil/DwarfLinker.cpp
Revision 366442 by hsiangkai:
[DebugInfo] Generate fixups as emitting DWARF .debug_frame/.eh_frame.

It is necessary to generate fixups in .debug_frame or .eh_frame as
relaxation is enabled due to the address delta may be changed after
relaxation.

There is an opcode with 6-bits data in debug frame encoding. So, we
also need 6-bits fixup types.

Differential Revision: https://reviews.llvm.org/D58335
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h (diff)llvm.src/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h
The file was modified/llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFObject.h (diff)llvm.src/include/llvm/DebugInfo/DWARF/DWARFObject.h
The file was modified/llvm/trunk/include/llvm/MC/MCDwarf.h (diff)llvm.src/include/llvm/MC/MCDwarf.h
The file was modified/llvm/trunk/include/llvm/MC/MCFixup.h (diff)llvm.src/include/llvm/MC/MCFixup.h
The file was modified/llvm/trunk/include/llvm/MC/MCFragment.h (diff)llvm.src/include/llvm/MC/MCFragment.h
The file was modified/llvm/trunk/lib/DebugInfo/DWARF/DWARFContext.cpp (diff)llvm.src/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was modified/llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugFrame.cpp (diff)llvm.src/lib/DebugInfo/DWARF/DWARFDebugFrame.cpp
The file was modified/llvm/trunk/lib/MC/MCAsmBackend.cpp (diff)llvm.src/lib/MC/MCAsmBackend.cpp
The file was modified/llvm/trunk/lib/MC/MCAssembler.cpp (diff)llvm.src/lib/MC/MCAssembler.cpp
The file was modified/llvm/trunk/lib/MC/MCDwarf.cpp (diff)llvm.src/lib/MC/MCDwarf.cpp
The file was modified/llvm/trunk/lib/Object/RelocationResolver.cpp (diff)llvm.src/lib/Object/RelocationResolver.cpp
The file was modified/llvm/trunk/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp (diff)llvm.src/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
The file was modified/llvm/trunk/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp (diff)llvm.src/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
The file was modified/llvm/trunk/test/CodeGen/RISCV/fixups-relax-diff.ll (diff)llvm.src/test/CodeGen/RISCV/fixups-relax-diff.ll
The file was modified/llvm/trunk/test/DebugInfo/RISCV/dwarf-riscv-relocs.ll (diff)llvm.src/test/DebugInfo/RISCV/dwarf-riscv-relocs.ll
The file was added/llvm/trunk/test/DebugInfo/RISCV/relax-debug-frame.llllvm.src/test/DebugInfo/RISCV/relax-debug-frame.ll
The file was modified/llvm/trunk/test/MC/RISCV/fde-reloc.s (diff)llvm.src/test/MC/RISCV/fde-reloc.s
The file was modified/llvm/trunk/tools/dsymutil/DwarfLinker.cpp (diff)llvm.src/tools/dsymutil/DwarfLinker.cpp
Revision 366441 by rksimon:
[X86] EltsFromConsecutiveLoads - support common source loads

This patch enables us to find the source loads for each element, splitting them into a Load and ByteOffset, and attempts to recognise consecutive loads that are in fact from the same source load.

A helper function, findEltLoadSrc, recurses to find a LoadSDNode and determines the element's byte offset within it. When attempting to match consecutive loads, byte offsetted loads then attempt to matched against a previous load that has already been confirmed to be a consecutive match.

Next step towards PR16739 - after this we just need to account for shuffling/repeated elements to create a vector load + shuffle.

Differential Revision: https://reviews.llvm.org/D64551
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp (diff)llvm.src/lib/Target/X86/X86ISelLowering.cpp
The file was modified/llvm/trunk/test/CodeGen/X86/clear_upper_vector_element_bits.ll (diff)llvm.src/test/CodeGen/X86/clear_upper_vector_element_bits.ll
The file was modified/llvm/trunk/test/CodeGen/X86/load-partial.ll (diff)llvm.src/test/CodeGen/X86/load-partial.ll
Revision 366439 by martong:
[analyzer] Add CTU user docs

Reviewers: dkrupp, a_sidorin, Szelethus, NoQ

Subscribers: whisperity, xazax.hun, baloghadamsoftware, szepet, rnkovacs, a.sidorin, mikhail.ramalho, donat.nagy, gamesh411, Charusso, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D64801
Change TypePath in RepositoryPath in Workspace
The file was added/cfe/trunk/docs/analyzer/user-docsclang.src/docs/analyzer/user-docs
The file was modified/cfe/trunk/docs/analyzer/user-docs.rst (diff)clang.src/docs/analyzer/user-docs.rst
The file was added/cfe/trunk/docs/analyzer/user-docs/CrossTranslationUnit.rstclang.src/docs/analyzer/user-docs/CrossTranslationUnit.rst
Revision 366437 by abataev:
[OPENMP][NVPTX]Mark barrier functions calls as convergent.

Added convergent attribute to the barrier functions calls for correct
optimizations.
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp (diff)clang.src/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp
The file was modified/cfe/trunk/test/OpenMP/nvptx_parallel_codegen.cpp (diff)clang.src/test/OpenMP/nvptx_parallel_codegen.cpp
Revision 366435 by rksimon:
[DAGCombine] Pull getSubVectorSrc helper out of narrowInsertExtractVectorBinOp. NFCI.

NFC step towards reusing this in other EXTRACT_SUBVECTOR combines.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/CodeGen/SelectionDAG/DAGCombiner.cpp (diff)llvm.src/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Revision 366434 by thopre:
[FileCheck] Fix numeric variable redefinition

Summary:
Commit r365249 changed usage of FileCheckNumericVariable to have one
instance of that class per variable as opposed to one instance per
definition of a given variable as was done before. However, it retained
the safety check in setValue that it should only be called with the
variable unset, even after r365625.

However this causes assert failure when a non-pseudo variable is being
redefined. And while redefinition of @LINE at each CHECK line work in
the general case, it caused problem when a substitution failed (fixed in
r365624) and still causes problem when a CHECK line does not match since
@LINE's value is cleared after substitutions in match() happened but
printSubstitutions also attempts a substitution.

This commit solves the root of the problem by changing setValue to set a
new value regardless of whether a value was set or not, thus fixing all
the aforementioned issues.

Reviewers: jhenderson, chandlerc, jdenny, probinson, grimar, arichardson, rnk

Subscribers: hiraditya, llvm-commits, probinson, dblaikie, grimar, arichardson, tra, rnk, kristina, hfinkel, rogfer01, JonChesterfield

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D64882
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/include/llvm/Support/FileCheck.h (diff)llvm.src/include/llvm/Support/FileCheck.h
The file was modified/llvm/trunk/lib/Support/FileCheck.cpp (diff)llvm.src/lib/Support/FileCheck.cpp
The file was modified/llvm/trunk/test/FileCheck/line-count.txt (diff)llvm.src/test/FileCheck/line-count.txt
The file was modified/llvm/trunk/test/FileCheck/numeric-expression.txt (diff)llvm.src/test/FileCheck/numeric-expression.txt
The file was modified/llvm/trunk/unittests/Support/FileCheckTest.cpp (diff)llvm.src/unittests/Support/FileCheckTest.cpp
Revision 366431 by spatel:
[x86] try harder to form LEA from ADD to avoid flag conflicts (PR40483)

LEA doesn't affect flags, so use it more liberally to replace an ADD when
we know that the ADD operands affect flags.

In the motivating example from PR40483:
https://bugs.llvm.org/show_bug.cgi?id=40483
...this lets us avoid duplicating a math op just to avoid flag conflict.

As mentioned in the TODO comments, this heuristic can be extended to
fire more often if that leads to more improvements.

Differential Revision: https://reviews.llvm.org/D64707
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/X86/X86ISelDAGToDAG.cpp (diff)llvm.src/lib/Target/X86/X86ISelDAGToDAG.cpp
The file was modified/llvm/trunk/test/CodeGen/X86/combine-sbb.ll (diff)llvm.src/test/CodeGen/X86/combine-sbb.ll
Revision 366430 by grimar:
[llvm-readelf] - Remove the precompiled binary from gnu-hash-symbols.test

I am working on https://bugs.llvm.org/show_bug.cgi?id=42622
and this patch reworks the gnu-hash-symbols.test so that it
will be easier to expand it with x86_64 case.

Differential revision: https://reviews.llvm.org/D64750
Change TypePath in RepositoryPath in Workspace
The file was removed/llvm/trunk/test/tools/llvm-readobj/Inputs/dynamic-table-exe.x86llvm.src/test/tools/llvm-readobj/Inputs/dynamic-table-exe.x86
The file was added/llvm/trunk/test/tools/llvm-readobj/elf-hash-symbols.testllvm.src/test/tools/llvm-readobj/elf-hash-symbols.test
The file was removed/llvm/trunk/test/tools/llvm-readobj/gnu-hash-symbols.testllvm.src/test/tools/llvm-readobj/gnu-hash-symbols.test
Revision 366429 by ibiryukov:
Revert r366422: [OpenCL] Improve destructor support in C++ for OpenCL

Reason: this commit causes crashes in the clang compiler when building
LLVM Support with libc++, see https://bugs.llvm.org/show_bug.cgi?id=42665
for details.
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/include/clang/AST/DeclCXX.h (diff)clang.src/include/clang/AST/DeclCXX.h
The file was modified/cfe/trunk/lib/AST/DeclCXX.cpp (diff)clang.src/lib/AST/DeclCXX.cpp
The file was modified/cfe/trunk/lib/CodeGen/CGCXXABI.h (diff)clang.src/lib/CodeGen/CGCXXABI.h
The file was modified/cfe/trunk/lib/CodeGen/CGCall.cpp (diff)clang.src/lib/CodeGen/CGCall.cpp
The file was modified/cfe/trunk/lib/CodeGen/CGClass.cpp (diff)clang.src/lib/CodeGen/CGClass.cpp
The file was modified/cfe/trunk/lib/CodeGen/CGDecl.cpp (diff)clang.src/lib/CodeGen/CGDecl.cpp
The file was modified/cfe/trunk/lib/CodeGen/CGExprCXX.cpp (diff)clang.src/lib/CodeGen/CGExprCXX.cpp
The file was modified/cfe/trunk/lib/CodeGen/CodeGenFunction.h (diff)clang.src/lib/CodeGen/CodeGenFunction.h
The file was modified/cfe/trunk/lib/CodeGen/ItaniumCXXABI.cpp (diff)clang.src/lib/CodeGen/ItaniumCXXABI.cpp
The file was modified/cfe/trunk/lib/CodeGen/MicrosoftCXXABI.cpp (diff)clang.src/lib/CodeGen/MicrosoftCXXABI.cpp
The file was modified/cfe/trunk/lib/Sema/SemaDeclCXX.cpp (diff)clang.src/lib/Sema/SemaDeclCXX.cpp
The file was modified/cfe/trunk/lib/Sema/SemaOverload.cpp (diff)clang.src/lib/Sema/SemaOverload.cpp
The file was added/cfe/trunk/test/CodeGenOpenCLCXX/addrspace-ctor.clclang.src/test/CodeGenOpenCLCXX/addrspace-ctor.cl
The file was removed/cfe/trunk/test/CodeGenOpenCLCXX/addrspace-with-class.clclang.src/test/CodeGenOpenCLCXX/addrspace-with-class.cl
Revision 366427 by hans:
Bump the trunk version to 10.0.0svn

and clear the release notes.
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/docs/ReleaseNotes.rst (diff)clang.src/docs/ReleaseNotes.rst
The file was modified/cfe/trunk/docs/conf.py (diff)clang.src/docs/conf.py
The file was modified/clang-tools-extra/trunk/docs/ReleaseNotes.rst (diff)N/A
The file was modified/clang-tools-extra/trunk/docs/conf.py (diff)N/A
The file was modified/libcxx/trunk/CMakeLists.txt (diff)N/A
The file was modified/libcxx/trunk/docs/ReleaseNotes.rst (diff)N/A
The file was modified/libcxx/trunk/docs/conf.py (diff)N/A
The file was modified/libcxx/trunk/include/__config (diff)N/A
The file was modified/libcxx/trunk/include/__libcpp_version (diff)N/A
The file was modified/libunwind/trunk/CMakeLists.txt (diff)N/A
The file was modified/libunwind/trunk/docs/conf.py (diff)N/A
The file was modified/lld/trunk/docs/ReleaseNotes.rst (diff)N/A
The file was modified/lld/trunk/docs/conf.py (diff)N/A
The file was modified/llvm/trunk/CMakeLists.txt (diff)llvm.src/CMakeLists.txt
The file was modified/llvm/trunk/docs/ReleaseNotes.rst (diff)llvm.src/docs/ReleaseNotes.rst
The file was modified/llvm/trunk/docs/conf.py (diff)llvm.src/docs/conf.py
The file was modified/llvm/trunk/utils/gn/secondary/llvm/version.gni (diff)llvm.src/utils/gn/secondary/llvm/version.gni
The file was modified/llvm/trunk/utils/release/build_llvm_package.bat (diff)llvm.src/utils/release/build_llvm_package.bat
The file was modified/polly/trunk/docs/ReleaseNotes.rst (diff)N/A
The file was modified/polly/trunk/docs/conf.py (diff)N/A
The file was modified/pstl/trunk/docs/ReleaseNotes.rst (diff)N/A
The file was modified/pstl/trunk/include/pstl/internal/pstl_config.h (diff)N/A
Revision 366423 by dnsampaio:
[ARM][DAGCOMBINE][FIX] PerformVMOVRRDCombine

Summary:
PerformVMOVRRDCombine ommits adding a offset
of 4 to the PointerInfo, when converting a
f64 = load[M]
to
{i32, i32} = {load[M], load[M + 4]}

Which would allow the machine scheduller
to break dependencies with the second load.

- pr42638

Reviewers: eli.friedman, dmgreen, ostannard

Reviewed By: ostannard

Subscribers: ostannard, javed.absar, kristof.beyls, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D64870
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/ARM/ARMISelLowering.cpp (diff)llvm.src/lib/Target/ARM/ARMISelLowering.cpp
The file was added/llvm/trunk/test/CodeGen/ARM/pr42638-VMOVRRDCombine.llllvm.src/test/CodeGen/ARM/pr42638-VMOVRRDCombine.ll
Revision 366422 by mantognini:
[OpenCL] Improve destructor support in C++ for OpenCL

Summary:
This patch does mainly three things:
1. It fixes a false positive error detection in Sema that is similar to
    D62156. The error happens when explicitly calling an overloaded
    destructor for different address spaces.
2. It selects the correct destructor when multiple overloads for
    address spaces are available.
3. It inserts the expected address space cast when invoking a
    destructor, if needed, and therefore fixes a crash due to the unmet
    assertion in llvm::CastInst::Create.

The following is a reproducer of the three issues:

    struct MyType {
      ~MyType() {}
      ~MyType() __constant {}
    };

    __constant MyType myGlobal{};

    kernel void foo() {
      myGlobal.~MyType(); // 1 and 2.
      // 1. error: cannot initialize object parameter of type
      //    '__generic MyType' with an expression of type '__constant MyType'
      // 2. error: no matching member function for call to '~MyType'
    }

    kernel void bar() {
      // 3. The implicit call to the destructor crashes due to:
      //    Assertion `castIsValid(op, S, Ty) && "Invalid cast!"' failed.
      //    in llvm::CastInst::Create.
      MyType myLocal;
    }

The added test depends on D62413 and covers a few more things than the
above reproducer.

Subscribers: yaxunl, Anastasia, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D64569
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/include/clang/AST/DeclCXX.h (diff)clang.src/include/clang/AST/DeclCXX.h
The file was modified/cfe/trunk/lib/AST/DeclCXX.cpp (diff)clang.src/lib/AST/DeclCXX.cpp
The file was modified/cfe/trunk/lib/CodeGen/CGCXXABI.h (diff)clang.src/lib/CodeGen/CGCXXABI.h
The file was modified/cfe/trunk/lib/CodeGen/CGCall.cpp (diff)clang.src/lib/CodeGen/CGCall.cpp
The file was modified/cfe/trunk/lib/CodeGen/CGClass.cpp (diff)clang.src/lib/CodeGen/CGClass.cpp
The file was modified/cfe/trunk/lib/CodeGen/CGDecl.cpp (diff)clang.src/lib/CodeGen/CGDecl.cpp
The file was modified/cfe/trunk/lib/CodeGen/CGExprCXX.cpp (diff)clang.src/lib/CodeGen/CGExprCXX.cpp
The file was modified/cfe/trunk/lib/CodeGen/CodeGenFunction.h (diff)clang.src/lib/CodeGen/CodeGenFunction.h
The file was modified/cfe/trunk/lib/CodeGen/ItaniumCXXABI.cpp (diff)clang.src/lib/CodeGen/ItaniumCXXABI.cpp
The file was modified/cfe/trunk/lib/CodeGen/MicrosoftCXXABI.cpp (diff)clang.src/lib/CodeGen/MicrosoftCXXABI.cpp
The file was modified/cfe/trunk/lib/Sema/SemaDeclCXX.cpp (diff)clang.src/lib/Sema/SemaDeclCXX.cpp
The file was modified/cfe/trunk/lib/Sema/SemaOverload.cpp (diff)clang.src/lib/Sema/SemaOverload.cpp
The file was removed/cfe/trunk/test/CodeGenOpenCLCXX/addrspace-ctor.clclang.src/test/CodeGenOpenCLCXX/addrspace-ctor.cl
The file was added/cfe/trunk/test/CodeGenOpenCLCXX/addrspace-with-class.clclang.src/test/CodeGenOpenCLCXX/addrspace-with-class.cl
Revision 366421 by stulova:
[OpenCL] Update comments/diagnostics to refer to C++ for OpenCL

Clang doesn't implement OpenCL C++, change the comments to
reflect that.

Differential Revision: https://reviews.llvm.org/D64867
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/include/clang/Basic/DiagnosticCommonKinds.td (diff)clang.src/include/clang/Basic/DiagnosticCommonKinds.td
The file was modified/cfe/trunk/include/clang/Basic/DiagnosticParseKinds.td (diff)clang.src/include/clang/Basic/DiagnosticParseKinds.td
The file was modified/cfe/trunk/include/clang/Basic/LangOptions.def (diff)clang.src/include/clang/Basic/LangOptions.def
The file was modified/cfe/trunk/include/clang/Basic/TokenKinds.def (diff)clang.src/include/clang/Basic/TokenKinds.def
The file was modified/cfe/trunk/include/clang/Frontend/LangStandards.def (diff)clang.src/include/clang/Frontend/LangStandards.def
The file was modified/cfe/trunk/lib/Frontend/InitPreprocessor.cpp (diff)clang.src/lib/Frontend/InitPreprocessor.cpp
The file was modified/cfe/trunk/lib/Parse/ParseDecl.cpp (diff)clang.src/lib/Parse/ParseDecl.cpp
The file was modified/cfe/trunk/lib/Sema/DeclSpec.cpp (diff)clang.src/lib/Sema/DeclSpec.cpp
The file was modified/cfe/trunk/lib/Sema/SemaCast.cpp (diff)clang.src/lib/Sema/SemaCast.cpp
The file was modified/cfe/trunk/lib/Sema/SemaDecl.cpp (diff)clang.src/lib/Sema/SemaDecl.cpp
The file was modified/cfe/trunk/lib/Sema/SemaDeclCXX.cpp (diff)clang.src/lib/Sema/SemaDeclCXX.cpp
The file was modified/cfe/trunk/lib/Sema/SemaExprCXX.cpp (diff)clang.src/lib/Sema/SemaExprCXX.cpp
The file was modified/cfe/trunk/test/Driver/unknown-std.cl (diff)clang.src/test/Driver/unknown-std.cl
The file was modified/cfe/trunk/test/Parser/opencl-cxx-keywords.cl (diff)clang.src/test/Parser/opencl-cxx-keywords.cl
The file was modified/cfe/trunk/test/Parser/opencl-cxx-virtual.cl (diff)clang.src/test/Parser/opencl-cxx-virtual.cl
The file was modified/cfe/trunk/test/SemaOpenCLCXX/newdelete.cl (diff)clang.src/test/SemaOpenCLCXX/newdelete.cl
The file was modified/cfe/trunk/test/SemaOpenCLCXX/restricted.cl (diff)clang.src/test/SemaOpenCLCXX/restricted.cl
Revision 366419 by shchenz:
[SCEV] add no wrap flag for SCEVAddExpr.
Differential Revision: https://reviews.llvm.org/D64868
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Analysis/ScalarEvolution.cpp (diff)llvm.src/lib/Analysis/ScalarEvolution.cpp
The file was modified/llvm/trunk/test/Analysis/ScalarEvolution/limit-depth.ll (diff)llvm.src/test/Analysis/ScalarEvolution/limit-depth.ll
The file was modified/llvm/trunk/test/Analysis/ScalarEvolution/nsw.ll (diff)llvm.src/test/Analysis/ScalarEvolution/nsw.ll
The file was modified/llvm/trunk/test/Analysis/ScalarEvolution/trip-count12.ll (diff)llvm.src/test/Analysis/ScalarEvolution/trip-count12.ll
The file was modified/llvm/trunk/test/Analysis/ScalarEvolution/trip-count9.ll (diff)llvm.src/test/Analysis/ScalarEvolution/trip-count9.ll
Revision 366417 by stulova:
[OpenCL][PR42033] Fix addr space deduction with template parameters

If dependent types appear in pointers or references we allow addr
space deduction because the addr space in template argument will
belong to the pointee and not the pointer or reference itself.

We also don't diagnose addr space on a function return type after
template instantiation. If any addr space for the return type was
provided on a template parameter this will be diagnosed during the
parsing of template definition.

Differential Revision: https://reviews.llvm.org/D62584
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/lib/Sema/SemaDecl.cpp (diff)clang.src/lib/Sema/SemaDecl.cpp
The file was modified/cfe/trunk/lib/Sema/SemaType.cpp (diff)clang.src/lib/Sema/SemaType.cpp
The file was modified/cfe/trunk/lib/Sema/TreeTransform.h (diff)clang.src/lib/Sema/TreeTransform.h
The file was modified/cfe/trunk/test/SemaOpenCLCXX/address-space-deduction.cl (diff)clang.src/test/SemaOpenCLCXX/address-space-deduction.cl
The file was modified/cfe/trunk/test/SemaOpenCLCXX/address-space-templates.cl (diff)clang.src/test/SemaOpenCLCXX/address-space-templates.cl
Revision 366412 by asb:
[RISCV] Reset NoPHIS MachineFunctionProperty in emitSelectPseudo

We insered PHIS were there were none before, so the property must be
reset. This error was found on an EXPENSIVE_CHECKS build.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/RISCV/RISCVISelLowering.cpp (diff)llvm.src/lib/Target/RISCV/RISCVISelLowering.cpp
Revision 366411 by skatkov:
[LoopInfo] Use early return in branch weight update functions. NFC.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Transforms/Utils/LoopUnrollPeel.cpp (diff)llvm.src/lib/Transforms/Utils/LoopUnrollPeel.cpp
Revision 366410 by asb:
[RISCV][DebugInfo] Fix dwarf-riscv-relocs.ll test on Windows

Windows sees DW_AT_decl_file (".\dwarf-riscv-relocs.c") while Linux sees
DW_AT_decl_file ("./dwarf-riscv-relocs.c").

This fixes a failure introduced in rL366402.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/test/DebugInfo/RISCV/dwarf-riscv-relocs.ll (diff)llvm.src/test/DebugInfo/RISCV/dwarf-riscv-relocs.ll
Revision 366409 by sammccall:
[CodeComplete] Fix ASTUnit cached completion of macros from preamble, broken in r342528

Summary:
The problem is the default LoadExternal with no completer, which happens when
loading global results.

Reviewers: ilya-biryukov, nik

Subscribers: arphaman, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D64864
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/lib/Sema/SemaCodeComplete.cpp (diff)clang.src/lib/Sema/SemaCodeComplete.cpp
The file was modified/cfe/trunk/test/Index/complete-macros.c (diff)clang.src/test/Index/complete-macros.c
The file was modified/cfe/trunk/test/Index/complete-macros.h (diff)clang.src/test/Index/complete-macros.h
Revision 366407 by zhangkang:
[NFC][PowerPC] Add the test to test the pass block-placement
Change TypePath in RepositoryPath in Workspace
The file was added/llvm/trunk/test/CodeGen/PowerPC/block-placement-1.mirllvm.src/test/CodeGen/PowerPC/block-placement-1.mir
The file was modified/llvm/trunk/test/CodeGen/PowerPC/block-placement.mir (diff)llvm.src/test/CodeGen/PowerPC/block-placement.mir
Revision 366406 by chaofan:
[PowerPC][Clang] Remove use of malloc in mm_malloc

Remove dependency of malloc in implementation of mm_malloc function in PowerPC
intrinsics and alignment assumption on glibc.

Reviewed By: Hal Finkel

Differential Revision: https://reviews.llvm.org/D64850
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/lib/Headers/ppc_wrappers/mm_malloc.h (diff)clang.src/lib/Headers/ppc_wrappers/mm_malloc.h
The file was modified/cfe/trunk/test/CodeGen/ppc-mm-malloc-le.c (diff)clang.src/test/CodeGen/ppc-mm-malloc-le.c
The file was modified/cfe/trunk/test/CodeGen/ppc-mm-malloc.c (diff)clang.src/test/CodeGen/ppc-mm-malloc.c
Revision 366405 by ctopper:
[X86] Disable combineConcatVectors for vXi1 vectors.

I'm not convinced the code this calls is properly vetted for
vXi1 vectors. Experimental vector widening legalization testing
for D55251 is now hitting an assertion failure inside
EltsFromConsecutiveLoads. This is occurring from a v2i1 load
having a store size different than its VT size. Hopefully
this commit will keep such issues from happening.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp (diff)llvm.src/lib/Target/X86/X86ISelLowering.cpp
The file was modified/llvm/trunk/test/CodeGen/X86/avx512vl-intrinsics-upgrade.ll (diff)llvm.src/test/CodeGen/X86/avx512vl-intrinsics-upgrade.ll
Revision 366403 by lanza:
Fix typo in programmer's manual cantFile -> cantFail
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/docs/ProgrammersManual.rst (diff)llvm.src/docs/ProgrammersManual.rst
Revision 366402 by asb:
[DWARF][RISCV] Add support for RISC-V relocations needed for debug info

When code relaxation is enabled many RISC-V fixups are not resolved but
instead relocations are emitted. This happens even for DWARF debug
sections. Therefore, to properly support the parsing of DWARF debug info
we need to be able to resolve RISC-V relocations. This patch adds:

* Support for RISC-V relocations in RelocationResolver
* DWARF support for two relocations per object file offset
* DWARF changes to support relocations in more DIE fields

The two relocations per offset change is needed because some RISC-V
relocations (used for label differences) come in pairs.

Relocations can also be emitted for DWARF fields where relocations were
not yet evaluated. Adding relocation support for some of these fields is
essencial. On the other hand, LLVM currently emits RISC-V relocations
for fixups that could be safely evaluated, since they can never be
affected by code relaxations. This patch also adds relocation support
for the fields affected by those extraneous relocations (the DWARF unit
entry Length, and the DWARF debug line entry TotalLength and
PrologueLength), for testing purposes.

Differential Revision: https://reviews.llvm.org/D62062
Patch by Luís Marques.
Change TypePath in RepositoryPath in Workspace
The file was modified/lld/trunk/ELF/DWARF.cpp (diff)N/A
The file was modified/llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFRelocMap.h (diff)llvm.src/include/llvm/DebugInfo/DWARF/DWARFRelocMap.h
The file was modified/llvm/trunk/lib/DebugInfo/DWARF/DWARFContext.cpp (diff)llvm.src/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was modified/llvm/trunk/lib/DebugInfo/DWARF/DWARFDataExtractor.cpp (diff)llvm.src/lib/DebugInfo/DWARF/DWARFDataExtractor.cpp
The file was modified/llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugLine.cpp (diff)llvm.src/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
The file was modified/llvm/trunk/lib/DebugInfo/DWARF/DWARFFormValue.cpp (diff)llvm.src/lib/DebugInfo/DWARF/DWARFFormValue.cpp
The file was modified/llvm/trunk/lib/DebugInfo/DWARF/DWARFListTable.cpp (diff)llvm.src/lib/DebugInfo/DWARF/DWARFListTable.cpp
The file was modified/llvm/trunk/lib/DebugInfo/DWARF/DWARFUnit.cpp (diff)llvm.src/lib/DebugInfo/DWARF/DWARFUnit.cpp
The file was modified/llvm/trunk/lib/Object/RelocationResolver.cpp (diff)llvm.src/lib/Object/RelocationResolver.cpp
The file was added/llvm/trunk/test/DebugInfo/RISCV/dwarf-riscv-relocs.llllvm.src/test/DebugInfo/RISCV/dwarf-riscv-relocs.ll