FailedChanges

Summary

  1. [llvm-objcopy] Allow strip symtab in executables and DSOs (details)
  2. [Attributor] Deduce "dereferenceable" attribute (details)
  3. [Attributor][NFC] Re-run clang-format on the Attributor.cpp (details)
  4. [ARM] Rename NEONModImm to VMOVModImm. NFC (details)
  5. SymbolVendor: Move compile unit handling into the SymbolFile class (details)
  6. PlistDiagnostics Fix for compile warning (NFC). (details)
  7. [SLPVectorizer] Remove null-pointer test. NFCI. (details)
  8. [yaml2obj] - Add a support for defining null sections in YAMLs. (details)
  9. [lldb][NFC] Tablegenify source (details)
  10. [Object/ELF.h] - Improve testing of the fields in (details)
  11. [RISCV] Re-enable rv32i-aliases-invalid.s test (details)
  12. Fix windows build after r366791 (details)
  13. [TargetLowering] Add SimplifyMultipleUseDemandedBits (details)
  14. [NFC][PhaseOredering][SimplifyCFG] Add more runlines to (details)
  15. [InstSimplify][NFC] Tests for skipping 'div-by-0' checks before inverted (details)
  16. [NFC][InstCombine] Fixup commutative/negative tests with icmp preds in (details)
  17. ProcessMachCore: Fix a -Wmisleading-indentation warning (details)
  18. [lldb][NFC] Tablegenify process (details)
  19. [NFC][ASAN] Add brackets around not command (details)
  20. Revert [RISCV] Re-enable rv32i-aliases-invalid.s test (details)
  21. [SLPVectorizer] Revert local change that got accidently got committed in (details)
  22. Fix MSVC warning about extending a uint32_t shift result to uint64_t. (details)
  23. [ARM][LowOverheadLoops] Fix branch target codegen (details)
  24. [libomptarget] Handle offload policy in push_tripcount (details)
  25. [clangd] Log version, cwd, args, and transport on startup. NFC (details)
  26. [llvm-ar] Fix support for archives with members larger than 4GB (details)
  27. Revert "[Object/ELF.h] - Improve testing of the fields in (details)
  28. [TargetLowering] SimplifyMultipleUseDemandedBits - add VECTOR_SHUFFLE (details)
  29. [ASTImporter] Fix inequivalence of ClassTemplateInstantiations (details)
  30. [GlobalISel][AArch64] Teach GISel to handle shifts in load addressing (details)
  31. [clang, test] Fix Clang :: Headers/max_align.c on 64-bit SPARC (details)
  32. [CMake] Add -z defs on Solaris (details)
  33. [compiler-rt][builtins] Provide __clear_cache for SPARC (details)
  34. [clang][NFCI] Fix random typos (details)
  35. [Logging] Fix format strings (details)
  36. [RISCV][NFC] Correct RUN in rvi-pseudos-invalid.s (details)
  37. [IR][Verifier] Allow IntToPtrInst to be !dereferenceable (details)
  38. [Utils] Remove legacy scripts (details)
  39. Improve clang-format-diff help output (details)
  40. [IndVars] Fix a subtle bug in optimizeLoopExits (details)
  41. [Utils] Add back utils directory (details)
  42. clang-format: Fix namespace end comments for namespaces with attributes (details)
  43. [Remarks] Add unit tests for YAML serialization (details)
  44. [utils] Remove sync-source (with SVN) (details)
  45. [libFuzzer] Fix __sanitizer_print_memory_profile return type in (details)
  46. [X86] In lowerVectorShuffle, instead of creating a new node to (details)
  47. ld.lld: Demangle symbols from archives in diagnostics (details)
  48. gn build: Merge r366832 (details)
  49. [PowerPC] Remove redundant load immediate instructions (details)
  50. [Remarks][NFC] Move the YAML serializer to its own header (details)
  51. Revert "Revert "Implement xfer:libraries-svr4:read packet"" (details)
  52. Revert "Revert "Add ReadCStringFromMemory for faster string reads"" (details)
  53. [Remarks] Introduce a new format: yaml-strtab (details)
  54. [lldb] Fix occasional hangs of VSCode testcases (details)
  55. [ARM] Add opt-bisect support to ARMParallelDSP. (details)
  56. [ExpressionParser] Fix formatting and whitespace (NFC) (details)
  57. [ExpressionParser] Handle llvm::Expected result (details)
  58. [GlobalISel][AArch64] Save a copy on G_SELECT by fixing condition to GPR (details)
  59. [docs] Clarify where the indirect UB due to write-write races comes from (details)
  60. Fix "control reaches end of non-void function" warning. NFCI. (details)
  61. [AArch64][GlobalISel] Add support for s128 loads, stores, extracts, (details)
  62. [lldb][test_suite] Update tests with unexpected pass on Android aarch64 (details)
  63. [DWARF] Use 32-bit format specifier for offset (details)
  64. FileCheck [8/12]: Define numeric var from expr (details)
  65. [FileCheck]] Canonicalize caret location testing (details)
  66. [FileCheck] Use ASSERT for fatal unit tests (details)
  67. [lldb] Fix enum value description (details)
  68. [Remarks] String tables should be move-only (details)
  69. [SafeStack] Insert the deref before remaining elements (details)
  70. [AArch64] Fix -Wunused-variable in -DLLVM_ENABLE_ASSERTIONS=off builds (details)
  71. [PowerPC][NFC] use opcode instead of MachineInstr for instrHasImmForm(). (details)
  72. [RISCV] Implement benchmark::cycleclock::Now (details)
  73. [Clangd] Fixed ExtractVariable for certain types of Exprs (details)
Commit c7e6d14c6c30c6798b14faf2a28e5be642b78ad8 by eleviant
[llvm-objcopy] Allow strip symtab in executables and DSOs
Re-commit of the patch after addressing -Wl,--emit-relocs case.
Differential revision: https://reviews.llvm.org/D61672
llvm-svn: 366787
The file was modifiedllvm/test/tools/llvm-objcopy/ELF/segment-shift-section-remove.test (diff)
The file was modifiedllvm/tools/llvm-objcopy/ELF/Object.h (diff)
The file was addedllvm/test/tools/llvm-objcopy/ELF/strip-unneeded-all-symbols.test
The file was modifiedllvm/tools/llvm-objcopy/ELF/Object.cpp (diff)
The file was modifiedllvm/test/tools/llvm-objcopy/ELF/preserve-segment-contents-ehdr-phdrs.test (diff)
The file was modifiedllvm/test/tools/llvm-objcopy/ELF/remove-multiple-sections.test (diff)
The file was modifiedllvm/test/tools/llvm-objcopy/ELF/segment-test-remove-section.test (diff)
The file was modifiedllvm/tools/llvm-objcopy/ELF/ELFObjcopy.cpp (diff)
Commit 19c07afe17fcacd8fd7d1196df16150be69e0dc9 by uenoku.tokotoko
[Attributor] Deduce "dereferenceable" attribute
Summary: Deduce dereferenceable attribute in Attributor.
These will be added in a later patch.
* dereferenceable(_or_null)_globally (D61652)
* Deduction based on load instruction (similar to D64258)
Reviewers: jdoerfert, sstefan1
Reviewed By: jdoerfert
Subscribers: hiraditya, jfb, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64876
llvm-svn: 366788
The file was modifiedllvm/test/Transforms/FunctionAttrs/noalias_returned.ll (diff)
The file was modifiedllvm/test/Transforms/FunctionAttrs/nonnull.ll (diff)
The file was addedllvm/test/Transforms/FunctionAttrs/dereferenceable.ll
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp (diff)
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h (diff)
The file was modifiedllvm/test/Transforms/FunctionAttrs/arg_nocapture.ll (diff)
Commit 9f5d80d79c11c567711ba0141603ac95b0e7d45e by uenoku.tokotoko
[Attributor][NFC] Re-run clang-format on the Attributor.cpp
llvm-svn: 366789
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp (diff)
Commit fdedf240f8c9a64552329fb3d200165924013e90 by david.green
[ARM] Rename NEONModImm to VMOVModImm. NFC
Rename NEONModImm to VMOVModImm as it is used in both NEON and MVE.
llvm-svn: 366790
The file was modifiedllvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp (diff)
The file was modifiedllvm/lib/Target/ARM/ARMInstrFormats.td (diff)
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.h (diff)
The file was modifiedllvm/lib/Target/ARM/MCTargetDesc/ARMAddressingModes.h (diff)
The file was modifiedllvm/lib/Target/ARM/ARMInstrNEON.td (diff)
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp (diff)
The file was modifiedllvm/lib/Target/ARM/MCTargetDesc/ARMInstPrinter.cpp (diff)
The file was modifiedllvm/lib/Target/ARM/MCTargetDesc/ARMInstPrinter.h (diff)
Commit e0119909a652c4df5129f54dbfa02fbb3fce3fc7 by pavel
SymbolVendor: Move compile unit handling into the SymbolFile class
Summary: SymbolFile classes are responsible for creating CompileUnit
instances and they already need to have a notion of the id<->CompileUnit
mapping
(because of APIs like ParseCompileUnitAtIndex). However, the
SymbolVendor has remained as the thing responsible for caching created
units (which the SymbolFiles were calling via convoluted constructs like
"m_obj_file->GetModule()->GetSymbolVendor()->SetCompileUnitAtIndex(...)").
This patch moves the responsibility of caching the units into the
SymbolFile class. It does this by moving the implementation of
SymbolVendor::{GetNumCompileUnits,GetCompileUnitAtIndex} into the
equivalent SymbolFile functions. The SymbolVendor functions become just
a passthrough much like the rest of SymbolVendor.
The original implementations of SymbolFile::GetNumCompileUnits is moved
to "CalculateNumCompileUnits", and are made protected, as the "Get"
function is the external api of the class.
SymbolFile::ParseCompileUnitAtIndex is made protected for the same
reason.
This is the first step in removing the SymbolVendor indirection, as
proposed in
<http://lists.llvm.org/pipermail/lldb-dev/2019-June/015071.html>. After
removing all interesting logic from the SymbolVendor class, I'll proceed
with removing the indirection itself.
Reviewers: clayborg, jingham, JDevlieghere
Subscribers: jdoerfert, lldb-commits
Differential Revision: https://reviews.llvm.org/D65089
llvm-svn: 366791
The file was modifiedlldb/include/lldb/Symbol/SymbolFile.h (diff)
The file was modifiedlldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp (diff)
The file was modifiedlldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp (diff)
The file was modifiedlldb/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.h (diff)
The file was modifiedlldb/tools/lldb-test/lldb-test.cpp (diff)
The file was modifiedlldb/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.cpp (diff)
The file was modifiedlldb/include/lldb/Symbol/SymbolVendor.h (diff)
The file was modifiedlldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.h (diff)
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h (diff)
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp (diff)
The file was modifiedlldb/source/Symbol/SymbolFile.cpp (diff)
The file was modifiedlldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.h (diff)
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp (diff)
The file was modifiedlldb/source/Symbol/SymbolVendor.cpp (diff)
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h (diff)
The file was modifiedlldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.h (diff)
The file was modifiedlldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp (diff)
Commit 739a93558f8c4b3ed0aeee48bba62a989e9212bd by 1.int32
PlistDiagnostics Fix for compile warning (NFC).
llvm-svn: 366792
The file was modifiedclang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp (diff)
Commit 87adcf8c470726869541483a47e7931874cb7312 by llvm-dev
[SLPVectorizer] Remove null-pointer test. NFCI.
cast<CallInst> shouldn't return null and we dereference the pointer in a
lot of other places, causing both MSVC + cppcheck to warn about
dereferenced null pointers
llvm-svn: 366793
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp (diff)
Commit 1957d68957c8fc988e290db3ca92333648e20726 by grimar
[yaml2obj] - Add a support for defining null sections in YAMLs.
ELF spec shows (Figure 4-10: Section Header Table Entry:Index 0,
http://www.sco.com/developers/gabi/latest/ch4.sheader.html) that section
header at index 0 (null section) can have sh_size and sh_link fields set
to non-zero values.
It says
(https://docs.oracle.com/cd/E19683-01/817-3677/6mj8mbtc9/index.html):
"If the number of sections is greater than or equal to SHN_LORESERVE
(0xff00), this member has the value zero and the actual number of
section header table entries is contained in the sh_size field of the
section header at index 0. Otherwise, the sh_size member of the initial
entry contains 0."
and:
"If the section name string table section index is greater than or equal
to SHN_LORESERVE
(0xff00), this member has the value SHN_XINDEX (0xffff) and the actual
index of the section name string table section is contained in the
sh_link field of the section header at index 0. Otherwise, the sh_link
member of the initial entry contains 0."
At this moment it is not possible to create custom section headers at
index 0 using yaml2obj.
This patch implements this.
Differential revision: https://reviews.llvm.org/D64913
llvm-svn: 366794
The file was addedllvm/test/tools/yaml2obj/elf-custom-null-section.yaml
The file was modifiedllvm/tools/yaml2obj/yaml2elf.cpp (diff)
Commit aaa682752685b1f3ed7ef90c18480dced27b1c6c by Raphael Isemann
[lldb][NFC] Tablegenify source
llvm-svn: 366795
The file was modifiedlldb/source/Commands/CommandObjectSource.cpp (diff)
The file was modifiedlldb/source/Commands/Options.td (diff)
Commit fccffa871c2654b95f6577a06ed4e2dcdd17a1ed by grimar
[Object/ELF.h] - Improve testing of the fields in
ELFFile<ELFT>::sections().
This eliminates a one error untested and also introduces a error for one
more possible case which lead to crash previously.
Differential revision: https://reviews.llvm.org/D64987
llvm-svn: 366796
The file was modifiedllvm/test/Object/invalid.test (diff)
The file was modifiedllvm/tools/yaml2obj/yaml2elf.cpp (diff)
The file was modifiedllvm/include/llvm/Object/ELF.h (diff)
The file was modifiedllvm/include/llvm/ObjectYAML/ELFYAML.h (diff)
Commit 53f9fec8e8b58f5a904bbfb4a1d648cde65aa860 by selliott
[RISCV] Re-enable rv32i-aliases-invalid.s test
We were getting test failures on some builders, which pointed to @LINE
being an undefined variable. I think that these failures should have
been fixed by https://reviews.llvm.org/rL366434, so I'm re-enabling the
test.
llvm-svn: 366797
The file was modifiedllvm/test/MC/RISCV/rv32i-aliases-invalid.s (diff)
Commit 7c35db08655182021c9ba9c7171e625eaa7e50e2 by pavel
Fix windows build after r366791
A side effect of this commit was that it exchanged the order of types
and compile units in the output of SymbolVendor::Dump. A couple of PDB
tests dependened on that to assert the links between the two.
While it wouldn't be too hard to update the tests, the change of
ordering was not something I intended to do with that patch, and is easy
to restore the original order, so I do just that.
llvm-svn: 366798
The file was modifiedlldb/source/Symbol/SymbolVendor.cpp (diff)
Commit 743d45ee2536d80ecadcc78ba5fc042de3bb3749 by llvm-dev
[TargetLowering] Add SimplifyMultipleUseDemandedBits
This patch introduces the DAG version of
SimplifyMultipleUseDemandedBits, which attempts to peek through ops
(mainly and/or/xor so far) that don't contribute to the
demandedbits/elts of a node - which means we can do this even in cases
where we have multiple uses of an op, which normally requires us to
demanded all bits/elts. The intention is to remove a similar instruction
- SelectionDAG::GetDemandedBits - once SimplifyMultipleUseDemandedBits
has matured.
The InstCombine version of SimplifyMultipleUseDemandedBits can constant
fold which I haven't added here yet, and so far I've only wired this up
to some basic binops (and/or/xor/add/sub/mul) to demonstrate its use.
We do see a couple of regressions that need to be addressed:
    AMDGPU unsigned dot product codegen retains an AND mask (for
ZERO_EXTEND) that it previously removed (but otherwise the dotproduct
codegen is a lot better).

   X86/AVX2 has poor handling of vector
ANY_EXTEND/ANY_EXTEND_VECTOR_INREG - it prematurely gets converted to
ZERO_EXTEND_VECTOR_INREG.
The code owners have confirmed its ok for these cases to fixed up in
future patches.
Differential Revision: https://reviews.llvm.org/D63281
llvm-svn: 366799
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-mul-widen.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-mul.ll (diff)
The file was modifiedllvm/test/CodeGen/AMDGPU/idot8u.ll (diff)
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp (diff)
The file was modifiedllvm/test/CodeGen/X86/2012-08-07-CmpISelBug.ll (diff)
The file was modifiedllvm/test/CodeGen/AMDGPU/idot4s.ll (diff)
The file was modifiedllvm/test/CodeGen/SystemZ/store_nonbytesized_vecs.ll (diff)
The file was modifiedllvm/test/CodeGen/AMDGPU/idot4u.ll (diff)
The file was modifiedllvm/test/CodeGen/AMDGPU/sdiv.ll (diff)
The file was modifiedllvm/test/CodeGen/AArch64/bitfield-insert.ll (diff)
The file was modifiedllvm/include/llvm/CodeGen/TargetLowering.h (diff)
The file was modifiedllvm/test/CodeGen/AMDGPU/idot8s.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-fshl-128.ll (diff)
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp (diff)
Commit 87fdcb8749681e39a03eb830ae881cec95150911 by lebedev.ri
[NFC][PhaseOredering][SimplifyCFG] Add more runlines to
umul.with.overflow tests
This way it will be more obvious that the problem is both in cost
threshold and in hardcoded benefit check, plus will show how the
instsimplify cleans this all in the end.
llvm-svn: 366800
The file was modifiedllvm/test/Transforms/SimplifyCFG/unsigned-multiplication-will-overflow.ll (diff)
The file was modifiedllvm/test/Transforms/PhaseOrdering/unsigned-multiply-overflow-check.ll (diff)
Commit 4153f17181369a988450ccabde0de6a407324738 by lebedev.ri
[InstSimplify][NFC] Tests for skipping 'div-by-0' checks before inverted
@llvm.umul.with.overflow
It would be already handled by the non-inverted case if we were hoisting
the `not` in InstCombine, but we don't (granted, we don't sink it in
this case either), so this is a separate case.
llvm-svn: 366801
The file was addedllvm/test/Transforms/InstSimplify/div-by-0-guard-before-umul_ov-not.ll
The file was addedllvm/test/Transforms/InstSimplify/div-by-0-guard-before-smul_ov-not.ll
Commit 402bf28ecc87493e2164ba2e6e3ac00734eb300a by lebedev.ri
[NFC][InstCombine] Fixup commutative/negative tests with icmp preds in
@llvm.umul.with.overflow tests
llvm-svn: 366802
The file was modifiedllvm/test/Transforms/InstCombine/unsigned-mul-overflow-check-via-udiv-of-allones.ll (diff)
The file was modifiedllvm/test/Transforms/InstCombine/unsigned-mul-lack-of-overflow-check-via-udiv-of-allones.ll (diff)
Commit c4c25e11b1be643b5a95d842f4c24e913e0a201b by pavel
ProcessMachCore: Fix a -Wmisleading-indentation warning
llvm-svn: 366803
The file was modifiedlldb/source/Plugins/Process/mach-core/ProcessMachCore.cpp (diff)
Commit 438dfcffe96f6a2bbc8c34331dd6bd3850903165 by Raphael Isemann
[lldb][NFC] Tablegenify process
llvm-svn: 366804
The file was modifiedlldb/source/Commands/CommandObjectProcess.cpp (diff)
The file was modifiedlldb/source/Commands/Options.td (diff)
Commit 686cee09450e30bed223ec52368c6e86bd849cd1 by lei
[NFC][ASAN] Add brackets around not command
Under certain execution conditions, the `not` command binds to the
command the output is piped to rather than the command piping the
output. In this case, that flips the return code of the FileCheck
invocation, causing a failure when FileCheck succeeds.
llvm-svn: 366805
The file was modifiedcompiler-rt/test/asan/TestCases/Linux/read_binary_name_regtest.c (diff)
Commit 46ffaeb00c3c57d8fc54544756b99e5f59fa714c by selliott
Revert [RISCV] Re-enable rv32i-aliases-invalid.s test
This reverts r366797 (git commit
53f9fec8e8b58f5a904bbfb4a1d648cde65aa860)
llvm-svn: 366806
The file was modifiedllvm/test/MC/RISCV/rv32i-aliases-invalid.s (diff)
Commit 5d4bb8628ccb79adb8021cba1d43daf205fa53fb by llvm-dev
[SLPVectorizer] Revert local change that got accidently got committed in
rL366799
This wasn't part of D63281
llvm-svn: 366807
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp (diff)
Commit c60c12fb10d49fbd7fbdc8e8ddc3134e16e0d1e7 by llvm-dev
Fix MSVC warning about extending a uint32_t shift result to uint64_t.
NFCI.
llvm-svn: 366808
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp (diff)
Commit 57e87dd81beb8df988bfa8e3369a2c7a888da093 by sam.parker
[ARM][LowOverheadLoops] Fix branch target codegen
While lowering test.set.loop.iterations, it wasn't checked how the
brcond was using the result and so the wls could branch to the loop
preheader instead of not entering it. The same was true for
loop.decrement.reg.
    So brcond and br_cc and now lowered manually when using the hwloop
intrinsics. During this we now check whether the result has been negated
and whether we're using SETEQ or SETNE and 0 or 1. We can then figure
out which basic block the WLS and LE should be targeting.
Differential Revision: https://reviews.llvm.org/D64616
llvm-svn: 366809
The file was modifiedllvm/lib/Target/ARM/ARMISelDAGToDAG.cpp (diff)
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp (diff)
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.h (diff)
The file was modifiedllvm/lib/Target/ARM/ARMInstrInfo.td (diff)
The file was addedllvm/test/CodeGen/Thumb2/LowOverheadLoops/branch-targets.ll
Commit 6e40ae8f3d3f794cfca624e52994e410438506a6 by hahnjo
[libomptarget] Handle offload policy in push_tripcount
If the first target region in a program calls the push_tripcount
function, libomptarget didn't handle the offload policy correctly. This
could lead to unexpected error messages as seen in
http://lists.llvm.org/pipermail/openmp-dev/2019-June/002561.html
To solve this, add a check calling IsOffloadDisabled() as all other
entry points already do. If this method returns false, libomptarget is
effectively disabled.
Differential Revision: https://reviews.llvm.org/D64626
llvm-svn: 366810
The file was modifiedopenmp/libomptarget/src/interface.cpp (diff)
Commit 4389cb9cf1b9493ad44bbfd97fe5d54450061988 by sam.mccall
[clangd] Log version, cwd, args, and transport on startup. NFC
Reviewers: hokein
Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet,
cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D65146
llvm-svn: 366811
The file was modifiedclang-tools-extra/clangd/tool/ClangdMain.cpp (diff)
Commit 24f3e102a678e2d102ac5660371fba1c2cfccd25 by gbreynoo
[llvm-ar] Fix support for archives with members larger than 4GB
llvm-ar outputs a strange error message when handling archives with
members larger than 4GB due to not checking file size when passing the
value as an unsigned 32 bit integer. This overflow issue caused
malformed archives to be created.:
https://bugs.llvm.org/show_bug.cgi?id=38058
This change allows for members above 4GB and will error in a case that
is over the formats size limit, a 10 digit decimal integer.
Differential Revision: https://reviews.llvm.org/D65093
llvm-svn: 366813
The file was modifiedllvm/lib/Object/ArchiveWriter.cpp (diff)
The file was modifiedllvm/lib/Object/Archive.cpp (diff)
The file was modifiedllvm/include/llvm/Object/Archive.h (diff)
Commit aa4f8d04a967e889838211e00b9ba7fc0c07846f by vlad
Revert "[Object/ELF.h] - Improve testing of the fields in
ELFFile<ELFT>::sections()."
This reverts commit r366796 because it was causing ubsan buildbot
failures.
llvm-svn: 366815
The file was modifiedllvm/test/Object/invalid.test (diff)
The file was modifiedllvm/tools/yaml2obj/yaml2elf.cpp (diff)
The file was modifiedllvm/include/llvm/Object/ELF.h (diff)
The file was modifiedllvm/include/llvm/ObjectYAML/ELFYAML.h (diff)
Commit 0e8359aec108be4bf794681ba477c7ffb00095d8 by llvm-dev
[TargetLowering] SimplifyMultipleUseDemandedBits - add VECTOR_SHUFFLE
support.
If all the demanded elts are from one operand and are inline, then we
can use the operand directly.
The changes are mainly from SSE41 targets which has blendvpd but not
cmpgtq, allowing the v2i64 comparison to be simplified as we only need
the signbit from alternate v4i32 elements.
llvm-svn: 366817
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-umax.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-umin-widen.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-trunc-ssat-widen.ll (diff)
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-smin-widen.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-trunc-packus-widen.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-umin.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/psubus.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/uadd_sat_vec.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-smax-widen.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-smax.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vec_minmax_uint.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-smin.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-trunc-ssat.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-trunc-packus.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vec_minmax_sint.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/usub_sat_vec.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-trunc-usat.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-fshl-rot-512.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/sat-add.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-trunc-usat-widen.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/midpoint-int-vec-128.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-fshr-rot-512.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-umax-widen.ll (diff)
Commit 123f6ff299ea64db9307324c9002db5c68433720 by gabor.marton
[ASTImporter] Fix inequivalence of ClassTemplateInstantiations
Summary: We falsely state inequivalence if the template parameter is a
qualified/nonquialified template in the first/second instantiation.
Also, different kinds of TemplateName should be equal if the template
decl (if available) is equal (even if the name kind is different).
Reviewers: a_sidorin, a.sidorin
Subscribers: rnkovacs, dkrupp, Szelethus, gamesh411, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D64241
llvm-svn: 366818
The file was modifiedclang/unittests/AST/StructuralEquivalenceTest.cpp (diff)
The file was modifiedclang/lib/AST/ASTStructuralEquivalence.cpp (diff)
Commit 2b404d01e82692b3085a2b1fdfd24f8d2a9739a2 by Jessica Paquette
[GlobalISel][AArch64] Teach GISel to handle shifts in load addressing
modes
When we select the XRO variants of loads, we can pull in very specific
shifts
(of the size of an element). E.g.
``` ldr x1, [x2, x3, lsl #3]
```
This teaches GISel to handle these when they're coming from shifts
specifically.
This adds a new addressing mode function,
`selectAddrModeShiftedExtendXReg` which recognizes this pattern.
This also packs this up with `selectAddrModeRegisterOffset` into
`selectAddrModeXRO`. This is intended to be equivalent to
`selectAddrModeXRO` in AArch64ISelDAGtoDAG.
Also update load-addressing-modes to show that all of the cases here
work.
Differential Revision: https://reviews.llvm.org/D65119
llvm-svn: 366819
The file was modifiedllvm/lib/Target/AArch64/AArch64InstructionSelector.cpp (diff)
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/load-addressing-modes.mir (diff)
Commit 2da6eea07cdef7462e75faadd421aae6e2e26275 by ro
[clang, test] Fix Clang :: Headers/max_align.c on 64-bit SPARC
Clang :: Headers/max_align.c currently FAILs on 64-bit SPARC:
  error: 'error' diagnostics seen but not expected:
   File /vol/llvm/src/clang/dist/test/Headers/max_align.c Line 12:
static_assert failed due to requirement '8 == _Alignof(max_align_t)' ""
1 error generated.
This happens because SuitableAlign isn't defined for SPARCv9 unlike
SPARCv8
(which uses the default of 64 bits).  gcc's sparc/sparc.h has
  #define BIGGEST_ALIGNMENT (TARGET_ARCH64 ? 128 : 64)
This patch sets SuitableAlign to match and updates the corresponding
testcase.
Tested on sparcv9-sun-solaris2.11.
Differential Revision: https://reviews.llvm.org/D64487
llvm-svn: 366820
The file was modifiedclang/lib/Basic/Targets/Sparc.h (diff)
The file was modifiedclang/test/Preprocessor/init.c (diff)
Commit 2b7f3a2b33524de62011a507a0c9521698c57f8d by ro
[CMake] Add -z defs on Solaris
Like other ELF targets, shared objects should be linked with -z defs on
Solaris.
Tested on x86_64-pc-solaris2.11 and sparcv9-sun-solaris2.11.
Differential Revision: https://reviews.llvm.org/D64484
llvm-svn: 366821
The file was modifiedllvm/cmake/modules/HandleLLVMOptions.cmake (diff)
Commit 569f92f1e1011947ae830c5d8f5313f3cadcc586 by ro
[compiler-rt][builtins] Provide __clear_cache for SPARC
While working on https://reviews.llvm.org/D40900, two tests were failing
since __clear_cache aborted.  While libgcc's __clear_cache is just
empty, this only happens because gcc (in gcc/config/sparc/sparc.c
(sparc32_initialize_trampoline, sparc64_initialize_trampoline)) emits
flush insns directly.
The following patch mimics that.
Tested on sparcv9-sun-solaris2.11.
Differential Revision: https://reviews.llvm.org/D64496
llvm-svn: 366822
The file was modifiedcompiler-rt/lib/builtins/clear_cache.c (diff)
Commit e72321f38e34b1e415398b8347e865e2cec0e4a6 by Jan Korous
[clang][NFCI] Fix random typos
llvm-svn: 366823
The file was modifiedclang/lib/Index/IndexSymbol.cpp (diff)
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchersInternal.h (diff)
The file was modifiedclang/lib/Sema/SemaExprCXX.cpp (diff)
Commit eaedc5ef8f5b4bac850510dad6fbd0199cbc0d35 by Jonas Devlieghere
[Logging] Fix format strings
Change format strings to use the `{}` syntax instead of the printf
syntax when using LLDB_LOG.
llvm-svn: 366824
The file was modifiedlldb/source/Target/Target.cpp (diff)
The file was modifiedlldb/source/Core/Communication.cpp (diff)
Commit 404551ac64efca14d865e40e62ee9ba871d864af by selliott
[RISCV][NFC] Correct RUN in rvi-pseudos-invalid.s
This test should test both riscv32 and riscv64.
llvm-svn: 366825
The file was modifiedllvm/test/MC/RISCV/rvi-pseudos-invalid.s (diff)
Commit 6f13637a3e130980456f37647f7628aa7fa7a2b6 by rtayl
[IR][Verifier] Allow IntToPtrInst to be !dereferenceable
Summary: Allow IntToPtrInst to carry !dereferenceable metadata tag. This
is valid since !dereferenceable can be only be applied to pointer type
values.
Change-Id: If8a6e3c616f073d51eaff52ab74535c29ed497b4
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64954
llvm-svn: 366826
The file was modifiedllvm/docs/LangRef.rst (diff)
The file was modifiedllvm/test/Analysis/ValueTracking/memory-dereferenceable.ll (diff)
The file was modifiedllvm/lib/IR/Verifier.cpp (diff)
The file was addedllvm/test/Verifier/dereferenceable-md-inttoptr.ll
The file was modifiedllvm/lib/IR/Value.cpp (diff)
The file was modifiedllvm/test/Verifier/dereferenceable-md.ll (diff)
Commit 6491076ec6800f54a8b1d09a95566b36db00f99d by Jonas Devlieghere
[Utils] Remove legacy scripts
As pointed out by Nathan in D65155, these scrips don't seem to serve any
real need anymore.
llvm-svn: 366827
The file was removedlldb/utils/lit-cpuid/CMakeLists.txt
The file was removedlldb/utils/TableGen/CMakeLists.txt
The file was removedlldb/utils/lui/breakwin.py
The file was removedlldb/utils/sync-source/lib/transfer/rsync.py
The file was removedlldb/utils/sync-source/pylintrc
The file was removedlldb/utils/lldb-dotest/lldb-dotest.in
The file was removedlldb/utils/TableGen/LLDBOptionDefEmitter.cpp
The file was removedlldb/utils/sync-source/syncsource.py
The file was removedlldb/utils/lui/Readme
The file was removedlldb/utils/lui/commandwin.py
The file was removedlldb/utils/lit-cpuid/lit-cpuid.cpp
The file was removedlldb/utils/test/lldb-disasm.py
The file was removedlldb/utils/test/llvm-mc-shell.py
The file was removedlldb/utils/test/disasm.py
The file was removedlldb/utils/test/README-lldb-disasm
The file was removedlldb/utils/sync-source/README.txt
The file was removedlldb/utils/sync-source/lib/transfer/protocol.py
The file was removedlldb/utils/lui/lui.py
The file was removedlldb/utils/test/run-dis.py
The file was removedlldb/utils/vim-lldb/README
The file was removedlldb/utils/test/main.c
The file was removedlldb/utils/misc/grep-svn-log.py
The file was removedlldb/utils/vim-lldb/doc/lldb.txt
The file was removedlldb/utils/lui/debuggerdriver.py
The file was removedlldb/utils/lldb-dotest/CMakeLists.txt
The file was removedlldb/utils/vim-lldb/python-vim-lldb/vim_panes.py
The file was removedlldb/utils/lui/cui.py
The file was removedlldb/utils/lui/eventwin.py
The file was removedlldb/utils/vim-lldb/python-vim-lldb/vim_signs.py
The file was removedlldb/utils/vim-lldb/python-vim-lldb/import_lldb.py
The file was removedlldb/utils/TableGen/LLDBTableGenBackends.h
The file was removedlldb/utils/sync-source/lib/transfer/transfer_spec.py
The file was removedlldb/utils/vim-lldb/plugin/lldb.vim
The file was removedlldb/utils/TableGen/LLDBTableGen.cpp
The file was removedlldb/utils/test/run-until-faulted.py
The file was removedlldb/utils/test/README-run-until-faulted
The file was removedlldb/utils/test/ras.py
The file was removedlldb/utils/vim-lldb/python-vim-lldb/vim_ui.py
The file was removedlldb/utils/lui/statuswin.py
The file was removedlldb/utils/lui/sandbox.py
The file was removedlldb/utils/vim-lldb/python-vim-lldb/lldb_controller.py
The file was removedlldb/utils/test/README-disasm
The file was removedlldb/utils/vim-lldb/python-vim-lldb/plugin.py
The file was removedlldb/utils/sync-source/lib/transfer/__init__.py
The file was removedlldb/utils/git-svn/convert.py
The file was removedlldb/utils/lui/lldbutil.py
The file was removedlldb/utils/lui/sourcewin.py
Commit 532f756555717e730166ac882e4c97ac0eeb1664 by nicolasweber
Improve clang-format-diff help output
The description in clang-format-diff.py is more useful than the one in
`clang-format-diff -h`, so use the same description in both places.
Differential Revision: https://reviews.llvm.org/D64998
llvm-svn: 366828
The file was modifiedclang/tools/clang-format/clang-format-diff.py (diff)
Commit ea5c94b497cfc43f9ec513f721e03aa5c669249a by listmail
[IndVars] Fix a subtle bug in optimizeLoopExits
The original code failed to account for the fact that one exit can have
a pointer exit count without all of them having pointer exit counts.
This could cause two separate bugs: 1) We might exit the loop early, and
leave optimizations undone.  This is what triggered the assertion
failure in the reported test case. 2) We might optimize one exit, then
exit without indicating a change.  This could result in an analysis
invalidaton bug if no other transform is done by the rest of indvars.
Note that the pointer exit counts are a really fragile concept.  They
show up only when we have a pointer IV w/o a datalayout to provide their
size.  It's really questionable to me whether the complexity implied is
worth it.
llvm-svn: 366829
The file was addedllvm/test/Transforms/IndVarSimplify/eliminate-exit-no-dl.ll
The file was modifiedllvm/lib/Transforms/Scalar/IndVarSimplify.cpp (diff)
Commit 93f505942c8091a3ebbf6f08764635f19dc79095 by Jonas Devlieghere
[Utils] Add back utils directory
Due to a bug my earlier commit removed the whole utils directory:
https://reviews.llvm.org/D65123
llvm-svn: 366830
The file was addedlldb/utils/TableGen/LLDBOptionDefEmitter.cpp
The file was addedlldb/utils/lui/sandbox.py
The file was addedlldb/utils/lit-cpuid/lit-cpuid.cpp
The file was addedlldb/utils/vim-lldb/python-vim-lldb/vim_panes.py
The file was addedlldb/utils/lit-cpuid/CMakeLists.txt
The file was addedlldb/utils/lui/breakwin.py
The file was addedlldb/utils/test/lldb-disasm.py
The file was addedlldb/utils/lui/commandwin.py
The file was addedlldb/utils/lui/debuggerdriver.py
The file was addedlldb/utils/vim-lldb/doc/lldb.txt
The file was addedlldb/utils/lldb-dotest/lldb-dotest.in
The file was addedlldb/utils/test/llvm-mc-shell.py
The file was addedlldb/utils/TableGen/LLDBTableGen.cpp
The file was addedlldb/utils/lui/Readme
The file was addedlldb/utils/lui/eventwin.py
The file was addedlldb/utils/TableGen/LLDBTableGenBackends.h
The file was addedlldb/utils/lldb-dotest/CMakeLists.txt
The file was addedlldb/utils/test/main.c
The file was addedlldb/utils/lui/lui.py
The file was addedlldb/utils/sync-source/lib/transfer/protocol.py
The file was addedlldb/utils/vim-lldb/python-vim-lldb/plugin.py
The file was addedlldb/utils/lui/cui.py
The file was addedlldb/utils/sync-source/pylintrc
The file was addedlldb/utils/vim-lldb/python-vim-lldb/vim_signs.py
The file was addedlldb/utils/sync-source/lib/transfer/rsync.py
The file was addedlldb/utils/test/run-until-faulted.py
The file was addedlldb/utils/lui/statuswin.py
The file was addedlldb/utils/vim-lldb/python-vim-lldb/lldb_controller.py
The file was addedlldb/utils/test/README-run-until-faulted
The file was addedlldb/utils/vim-lldb/README
The file was addedlldb/utils/sync-source/syncsource.py
The file was addedlldb/utils/test/README-disasm
The file was addedlldb/utils/lui/lldbutil.py
The file was addedlldb/utils/test/disasm.py
The file was addedlldb/utils/test/README-lldb-disasm
The file was addedlldb/utils/vim-lldb/python-vim-lldb/import_lldb.py
The file was addedlldb/utils/sync-source/lib/transfer/transfer_spec.py
The file was addedlldb/utils/test/run-dis.py
The file was addedlldb/utils/TableGen/CMakeLists.txt
The file was addedlldb/utils/vim-lldb/plugin/lldb.vim
The file was addedlldb/utils/sync-source/README.txt
The file was addedlldb/utils/lui/sourcewin.py
The file was addedlldb/utils/sync-source/lib/transfer/__init__.py
The file was addedlldb/utils/test/ras.py
The file was addedlldb/utils/vim-lldb/python-vim-lldb/vim_ui.py
Commit 37944130f950ffb8f14cb7fe1a8ba3ca0d9f097c by nicolasweber
clang-format: Fix namespace end comments for namespaces with attributes
and macros.
Fixes PR39247.
While here, also make C++20 `namespace A::inline B::inline C` nested
inline namespaced definitions work.
Before:
   #define DEPRECATE_WOOF [[deprecated("meow")]]
    namespace DEPRECATE_WOOF woof {
   void f() {}
   } // namespace DEPRECATE_WOOFwoof
    namespace [[deprecated("meow")]] woof {
     void f() {}
   } // namespace [[deprecated("meow")]]woof
    namespace woof::inline bark {
     void f() {}
   } // namespace woof::inlinebark
Now:
   #define DEPRECATE_WOOF [[deprecated("meow")]]
    namespace DEPRECATE_WOOF woof {
   void f() {}
   } // namespace woof
    namespace [[deprecated("meow")]] woof {
   void f() {}
   } // namespace woof
    namespace woof::inline bark {
   void f() {}
   } // namespace woof::inline bark
(In addition to the fixed namespace end comments, also note the correct
indent of the namespace contents.)
Differential Revision: https://reviews.llvm.org/D65125
llvm-svn: 366831
The file was modifiedclang/lib/Format/UnwrappedLineParser.cpp (diff)
The file was modifiedclang/unittests/Format/FormatTest.cpp (diff)
The file was modifiedclang/lib/Format/NamespaceEndCommentsFixer.cpp (diff)
The file was modifiedclang/unittests/Format/NamespaceEndCommentsFixerTest.cpp (diff)
Commit 78c92d2ec3a54a92ad644c9b52a295f963432aa5 by francisvm
[Remarks] Add unit tests for YAML serialization
Add tests for both the string table and non string table case.
llvm-svn: 366832
The file was modifiedllvm/unittests/Remarks/CMakeLists.txt (diff)
The file was addedllvm/unittests/Remarks/YAMLRemarksSerializerTest.cpp
The file was modifiedllvm/lib/Remarks/RemarkStringTable.cpp (diff)
Commit db1eb7c569ebc6f3e536782504a32761a5f212e9 by Jonas Devlieghere
[utils] Remove sync-source (with SVN)
llvm-svn: 366833
The file was removedlldb/utils/sync-source/lib/transfer/__init__.py
The file was removedlldb/utils/sync-source/syncsource.py
The file was removedlldb/utils/sync-source/lib/transfer/rsync.py
The file was removedlldb/utils/sync-source/README.txt
The file was removedlldb/utils/sync-source/lib/transfer/protocol.py
The file was removedlldb/utils/sync-source/pylintrc
The file was removedlldb/utils/sync-source/lib/transfer/transfer_spec.py
Commit 374398afb784e2e0f027f9a408eb7640198d8558 by mmoroz
[libFuzzer] Fix __sanitizer_print_memory_profile return type in
ExtFunctions.def
Summary: Looks like a typo, as that function actually returns void and
is used as such in libFuzzer code as well.
Reviewers: kcc, Dor1s
Reviewed By: Dor1s
Subscribers: delcypher, #sanitizers, llvm-commits
Tags: #llvm, #sanitizers
Differential Revision: https://reviews.llvm.org/D65160
llvm-svn: 366834
The file was modifiedcompiler-rt/lib/fuzzer/FuzzerExtFunctions.def (diff)
Commit 76bc3d6e074d6e71cf13b82fa4a76678e67efae9 by craig.topper
[X86] In lowerVectorShuffle, instead of creating a new node to
canonicalize the shuffle mask by commuting, just commute the mask and
swap V1/V2.
LegalizeDAG tries to legal the DAG by legalizing nodes before their
operands.
If we create a new node, we end up legalizing it after its operands.
This prevents some of the optimizations that can be done when the
operand is a build_vector since the build_vector will have been
legalized to something else.
Differential Revision: https://reviews.llvm.org/D65132
llvm-svn: 366835
The file was modifiedllvm/test/CodeGen/X86/vector-shift-ashr-sub128.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-zext.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-128-v2.ll (diff)
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp (diff)
The file was modifiedllvm/test/CodeGen/X86/oddshuffles.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-zext-widen.ll (diff)
Commit 9c0716f1166836aeac6dd973fe04a1bafebe828e by nicolasweber
ld.lld: Demangle symbols from archives in diagnostics
This ports r366573 from COFF to ELF.
There are now to toString(Archive::Symbol), one doing MSVC demangling in
COFF and one doing Itanium demangling in ELF, so rename these two to
toCOFFString() and to toELFString() to not get a duplicate symbol.
Nothing ever passes a raw Archive::Symbol to CHECK(), so these not being
part of the normal toString() machinery seems ok.
There are two code paths in the ELF linker that emits this type of
diagnostic:
1. The "normal" one in InputFiles.cpp. This is covered by the tweaked
test.
2. An additional one that's only used for libcalls if there's at least
  one bitcode in the link, and if the libcall symbol is lazy, and
  lazily loaded from an archive (i.e. not from a lazy .o file).
  (This code path was added in r339301.) Since all libcall names so far
  are C symbols and never mangled, the change there is not observable
  and hence not covered by tests.
Differential Revision: https://reviews.llvm.org/D65095
llvm-svn: 366836
The file was modifiedlld/COFF/InputFiles.cpp (diff)
The file was modifiedlld/COFF/Symbols.cpp (diff)
The file was modifiedlld/ELF/Symbols.cpp (diff)
The file was modifiedlld/COFF/Driver.cpp (diff)
The file was modifiedlld/COFF/Symbols.h (diff)
The file was modifiedlld/ELF/InputFiles.cpp (diff)
The file was modifiedlld/test/ELF/archive-thin-missing-member.s (diff)
The file was modifiedlld/ELF/Symbols.h (diff)
Commit 62ac91f36909b8d8d964c0536075f73537f15f09 by nicolasweber
gn build: Merge r366832
llvm-svn: 366837
The file was modifiedllvm/utils/gn/secondary/llvm/unittests/Remarks/BUILD.gn (diff)
Commit 41a010a4ef16f5c67c45d759f5d664c24e8a7afe by yi-hong.lyu
[PowerPC] Remove redundant load immediate instructions
Currently PowerPC backend emits code like this:
  r3 = li 0
std r3, 264(r1)
r3 = li 0
std r3, 272(r1)
This patch fixes that and other cases where a register already contains
a value that is loaded so we will get:
  r3 = li 0
std r3, 264(r1)
std r3, 272(r1)
Differential Revision: https://reviews.llvm.org/D64220
llvm-svn: 366840
The file was modifiedllvm/lib/Target/PowerPC/PPCPreEmitPeephole.cpp (diff)
The file was addedllvm/test/CodeGen/PowerPC/remove-redundant-load-imm.ll
The file was addedllvm/test/CodeGen/PowerPC/remove-redundant-load-imm.mir
Commit cbbdc4183837dfea92cf840b93e0f12e2bcccffc by francisvm
[Remarks][NFC] Move the YAML serializer to its own header
llvm-svn: 366842
The file was modifiedllvm/lib/Remarks/YAMLRemarkSerializer.cpp (diff)
The file was modifiedllvm/unittests/Remarks/YAMLRemarksSerializerTest.cpp (diff)
The file was addedllvm/include/llvm/Remarks/YAMLRemarkSerializer.h
The file was modifiedllvm/lib/IR/RemarkStreamer.cpp (diff)
The file was modifiedllvm/include/llvm/Remarks/RemarkSerializer.h (diff)
Commit 05e32bad137c80a7ff28f8f002ff0e9f614ad2af by antonio.afonso
Revert "Revert "Implement xfer:libraries-svr4:read packet""
This reverts commit 08c38f77c5fb4d3735ec215032fed8ee6730b3db.
llvm-svn: 366847
The file was addedlldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/svr4lib_b_quote.cpp
The file was addedlldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/Makefile
The file was addedlldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/svr4lib_a.cpp
The file was modifiedlldb/include/lldb/Host/common/NativeProcessProtocol.h (diff)
The file was addedlldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/TestGdbRemoteLibrariesSvr4Support.py
The file was addedlldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/main.cpp
The file was addedlldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/svr4lib_b_quote.mk
The file was modifiedlldb/source/Plugins/Process/POSIX/NativeProcessELF.cpp (diff)
The file was addedlldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/svr4lib_a.mk
The file was modifiedlldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.h (diff)
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/gdbremote_testcase.py (diff)
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp (diff)
The file was modifiedlldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp (diff)
The file was modifiedlldb/source/Plugins/Process/POSIX/NativeProcessELF.h (diff)
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp (diff)
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.h (diff)
Commit 70795c1e3a7fd1172ba31954da02b75db71af388 by antonio.afonso
Revert "Revert "Add ReadCStringFromMemory for faster string reads""
This reverts commit 9c10b620c0619611dfe062216459431955ac4801.
llvm-svn: 366848
The file was modifiedlldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp (diff)
The file was modifiedlldb/source/Plugins/Process/POSIX/NativeProcessELF.cpp (diff)
The file was modifiedlldb/include/lldb/Host/common/NativeProcessProtocol.h (diff)
The file was modifiedlldb/source/Host/common/NativeProcessProtocol.cpp (diff)
The file was modifiedlldb/unittests/Host/NativeProcessProtocolTest.cpp (diff)
Commit c5b5cc4575452463360a16c80e1fce25e7e06d31 by francisvm
[Remarks] Introduce a new format: yaml-strtab
This exposes better support to use a string table with a format through
an actual new remark::Format, called yaml-strtab.
This can now be used with -fsave-optimization-record=yaml-strtab.
llvm-svn: 366849
The file was modifiedllvm/lib/Remarks/RemarkFormat.cpp (diff)
The file was modifiedllvm/unittests/Remarks/YAMLRemarksSerializerTest.cpp (diff)
The file was modifiedllvm/lib/Remarks/RemarkParser.cpp (diff)
The file was modifiedllvm/docs/Remarks.rst (diff)
The file was modifiedllvm/include/llvm/Remarks/RemarkSerializer.h (diff)
The file was modifiedllvm/lib/Remarks/YAMLRemarkParser.cpp (diff)
The file was modifiedllvm/lib/Remarks/YAMLRemarkSerializer.cpp (diff)
The file was modifiedllvm/test/CodeGen/X86/remarks-section.ll (diff)
The file was modifiedllvm/include/llvm/Remarks/YAMLRemarkSerializer.h (diff)
The file was modifiedllvm/unittests/Remarks/YAMLRemarksParsingTest.cpp (diff)
The file was modifiedllvm/include/llvm/Remarks/RemarkFormat.h (diff)
The file was modifiedllvm/lib/IR/RemarkStreamer.cpp (diff)
The file was modifiedllvm/lib/Remarks/YAMLRemarkParser.h (diff)
The file was modifiedllvm/include/llvm/Remarks/RemarkParser.h (diff)
Commit 8693f8f9c18282aea953216634db396db7b19220 by jan.kratochvil
[lldb] Fix occasional hangs of VSCode testcases
On slower machines the vscode testcases were sometimes hanging:
  1910 ? Sl 0:00 |   \_ /usr/bin/python
.../llvm/tools/lldb/test/dotest.py ... -p TestVSCode_setBreakpoints.py
2649 ? Sl 0:00 |       \_ .../build/bin/lldb-vscode
2690 ? S  0:00 |           \_ .../build/bin/lldb-server gdbserver
--fd=9 --native-regs --setsid
2708 ? t  0:00 |               \_
.../build/lldb-test-build.noindex/tools/lldb-vscode/breakpoint/TestVSCode_setBreakpoints.test_functionality/a.out
A reproducer of the racy bug for send_recv():
#         self.send_packet(command)
#+        import time
#+        time.sleep(1)
#         done = False
I guess `request_continue` was probably originally intended to be
synchronous but then it isn't and this code has been leftover there.
Differential revision: https://reviews.llvm.org/D65163
llvm-svn: 366850
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py (diff)
Commit b27fc95e89f69d7fac950a8a6d98a91d2bdfa95c by efriedma
[ARM] Add opt-bisect support to ARMParallelDSP.
llvm-svn: 366851
The file was modifiedllvm/lib/Target/ARM/ARMParallelDSP.cpp (diff)
Commit 50a3f0e08e3597f49f0c66e9f6b6181fccf154ff by Jonas Devlieghere
[ExpressionParser] Fix formatting and whitespace (NFC)
Fix formatting and whitespace before making changes to this file.
llvm-svn: 366852
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp (diff)
Commit b362c976fb7d25f3eb4a5297abbad5489ea8deef by Jonas Devlieghere
[ExpressionParser] Handle llvm::Expected result
This fixes the unchecked-error assertion at runtime.
  Expected<T> must be checked before access or destruction. Expected<T>
value was in success state. (Note: Expected<T> values in success mode
must still be checked prior to being destroyed).
llvm-svn: 366853
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp (diff)
Commit a2fae1e3e99119d2701c855b71991c80648376fa by Jessica Paquette
[GlobalISel][AArch64] Save a copy on G_SELECT by fixing condition to GPR
The condition can never be fed by FPRs, so it should always be on a GPR.
Differential Revision: https://reviews.llvm.org/D65157
llvm-svn: 366854
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/regbank-select.mir (diff)
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/regbank-fp-use-def.mir (diff)
The file was modifiedllvm/lib/Target/AArch64/AArch64RegisterBankInfo.cpp (diff)
Commit c69273fa10720d6053630f21edc7e0d91847068e by efriedma
[docs] Clarify where the indirect UB due to write-write races comes from
This is based on https://bugs.llvm.org/show_bug.cgi?id=42435#c3.
Patch by Ralf Jung.
llvm-svn: 366855
The file was modifiedllvm/docs/Atomics.rst (diff)
Commit 78b1e777f59a26d667d6a5258138cc09cf146c18 by llvm-dev
Fix "control reaches end of non-void function" warning. NFCI.
llvm-svn: 366856
The file was modifiedllvm/lib/IR/RemarkStreamer.cpp (diff)
Commit 511f7f5785e58a75fd82675336fa7fc90ba45c76 by Amara Emerson
[AArch64][GlobalISel] Add support for s128 loads, stores, extracts,
truncs.
We need to be able to load and store s128 for memcpy inlining, where we
want to generate Q register mem ops. Making these legal also requires
that we add some support in other instructions. Regbankselect should
also know about these since they have no GPR register class that can
hold them, so need special handling to live on the FPR bank.
Differential Revision: https://reviews.llvm.org/D65166
llvm-svn: 366857
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-extracts.mir (diff)
The file was modifiedllvm/lib/Target/AArch64/AArch64LegalizerInfo.cpp (diff)
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/select-extract.mir
The file was removedllvm/test/CodeGen/AArch64/GlobalISel/legalize-load-store-s128-unaligned.mir
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/regbank-extract.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/select-trunc.mir (diff)
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/arm64-fallback.ll (diff)
The file was modifiedllvm/lib/Target/AArch64/AArch64RegisterBankInfo.cpp (diff)
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/regbank-trunc-s128.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-inserts.mir (diff)
The file was modifiedllvm/lib/Target/AArch64/AArch64InstructionSelector.cpp (diff)
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-load-store.mir (diff)
Commit 45a3fd206fb06f77a08968c99a8172cbf2ccdd0f by apl
[lldb][test_suite] Update tests with unexpected pass on Android aarch64
Summary: update some test decorates that can actually pass on andriod
aarch64
Patch by Wanyi Ye <kusmour@gmail.com>
Differential Revision: https://reviews.llvm.org/D64767
llvm-svn: 366858
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/watchpoint/watchpoint_commands/condition/TestWatchpointConditionCmd.py (diff)
The file was modifiedlldb/packages/Python/lldbsuite/test/lang/c/const_variables/TestConstVariables.py (diff)
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/watchpoint/watchpoint_commands/command/TestWatchpointCommandPython.py (diff)
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/breakpoint/hardware_breakpoints/hardware_breakpoint_on_multiple_threads/TestHWBreakMultiThread.py (diff)
The file was modifiedlldb/packages/Python/lldbsuite/test/lang/c/global_variables/TestGlobalVariables.py (diff)
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/deleted-executable/TestDeletedExecutable.py (diff)
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/watchpoint/watchpoint_events/TestWatchpointEvents.py (diff)
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/TestLldbGdbServer.py (diff)
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/watchpoint/watchpoint_commands/command/TestWatchpointCommandLLDB.py (diff)
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/target_create_deps/TestTargetCreateDeps.py (diff)
The file was modifiedlldb/packages/Python/lldbsuite/test/python_api/watchpoint/condition/TestWatchpointConditionAPI.py (diff)
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/inferior-assert/TestInferiorAssert.py (diff)
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/load_unload/TestLoadUnload.py (diff)
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/target_command/TestTargetCommand.py (diff)
Commit f8552e67e91177911351f3ffa8028d44ec1e8b66 by Jonas Devlieghere
[DWARF] Use 32-bit format specifier for offset
This should fix PR42730.
llvm-svn: 366859
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp (diff)
Commit 1b05977538d9487aa845ee2f3bec8b89c63c4f29 by thomasp
FileCheck [8/12]: Define numeric var from expr
Summary: This patch is part of a patch series to add support for
FileCheck numeric expressions. This specific patch lift the restriction
for a numeric expression to either be a variable definition or a numeric
expression to try to match.
This commit allows a numeric variable to be set to the result of the
evaluation of a numeric expression after it has been matched
successfully. When it happens, the variable is allowed to be used on the
same line since its value is known at match time.
It also makes use of this possibility to reuse the parsing code to parse
a command-line definition by crafting a mirror string of the
-D option with the equal sign replaced by a colon sign, e.g. for option
'-D#NUMVAL=10' it creates the string
'-D#NUMVAL=10 (parsed as [[#NUMVAL:10]])' where the numeric expression
is parsed to define NUMVAL. This result in a few tests needing updating
for the location diagnostics on top of the tests for the new feature.
It also enables empty numeric expression which match any number without
defining a variable. This is done here rather than in commit #5 of the
patch series because it requires to dissociate automatic regex insertion
in RegExStr from variable definition which would make commit #5 even
bigger than it already is.
Copyright:
   - Linaro (changes up to diff 183612 of revision D55940)
   - GraphCore (changes in later versions of revision D55940 and
                in new revision created off D55940)
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/D60388
llvm-svn: 366860
The file was modifiedllvm/test/FileCheck/numeric-defines-diagnostics.txt (diff)
The file was modifiedllvm/include/llvm/Support/FileCheck.h (diff)
The file was modifiedllvm/lib/Support/FileCheck.cpp (diff)
The file was modifiedllvm/unittests/Support/FileCheckTest.cpp (diff)
The file was modifiedllvm/test/FileCheck/numeric-defines.txt (diff)
The file was modifiedllvm/test/FileCheck/numeric-expression.txt (diff)
The file was modifiedllvm/docs/CommandGuide/FileCheck.rst (diff)
Commit ba4e8d791342219c072a5c8de8a3f41fbb53c6be by thomasp
[FileCheck]] Canonicalize caret location testing
Summary: Testing of caret location in diagnostic message is currently
made with CHECK directive with the following general format: CHECK: {{^
       \^$}}
James Henderson suggested the following would be more readable: CHECK:
{{^}}         ^{{$}}
and when whole lines can be matched (as is the case for command-line
testing where error messages do not include path): CHECK:         ^
using the option --match-full-lines.
This commit implements these 2 changes on all existing caret position
tests. It also aligns the caret to the character it is trying to match
in the above line.
Reviewers: jhenderson, chandlerc, jdenny, probinson, grimar,
arichardson, rnk
Subscribers: JonChesterfield, rogfer01, hfinkel, kristina, rnk, tra,
arichardson, grimar, dblaikie, probinson, llvm-commits, hiraditya
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64923
llvm-svn: 366861
The file was modifiedllvm/test/FileCheck/numeric-expression.txt (diff)
The file was modifiedllvm/test/FileCheck/string-defines-diagnostics.txt (diff)
The file was modifiedllvm/test/FileCheck/numeric-defines-diagnostics.txt (diff)
The file was modifiedllvm/test/FileCheck/check-not-diaginfo.txt (diff)
The file was modifiedllvm/test/FileCheck/verbose.txt (diff)
Commit fb596735fe9c1ea22afb1727cbbba449bd6334c2 by thomasp
[FileCheck] Use ASSERT for fatal unit tests
Summary: A number of EXPECT statements in FileCheck's unit tests are
dependent from results of other values being tested. This commit changes
those earlier test to use ASSERT instead of EXPECT to avoid cascade
errors when they are all related to the same issue.
Reviewers: jhenderson, chandlerc, jdenny, probinson, grimar,
arichardson, rnk
Subscribers: JonChesterfield, rogfer01, hfinkel, kristina, rnk, tra,
arichardson, grimar, dblaikie, probinson, llvm-commits, hiraditya
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64921
llvm-svn: 366862
The file was modifiedllvm/unittests/Support/FileCheckTest.cpp (diff)
Commit 1cb102cac9dc8bc456ff752321c8774dd2e300dc by Jonas Devlieghere
[lldb] Fix enum value description
llvm-svn: 366863
The file was modifiedlldb/utils/TableGen/LLDBTableGen.cpp (diff)
Commit 4287c95b08ab9b10cce50ab8139f536ea2d72f1d by francisvm
[Remarks] String tables should be move-only
Copying them is expensive. This allows the tables to be moved around at
lower cost, and allows a remarks::StringTable to be constructed from a
remarks::ParsedStringTable.
llvm-svn: 366864
The file was modifiedllvm/include/llvm/Remarks/RemarkParser.h (diff)
The file was modifiedllvm/include/llvm/Remarks/RemarkStringTable.h (diff)
The file was modifiedllvm/unittests/Remarks/YAMLRemarksParsingTest.cpp (diff)
The file was modifiedllvm/lib/Remarks/YAMLRemarkParser.h (diff)
The file was modifiedllvm/lib/Remarks/RemarkStringTable.cpp (diff)
The file was modifiedllvm/lib/Remarks/RemarkParser.cpp (diff)
The file was modifiedllvm/lib/Remarks/YAMLRemarkParser.cpp (diff)
Commit 8b161bacf413d2e4f133b3dea121f1d7ae9301b7 by phosek
[SafeStack] Insert the deref before remaining elements
This is a follow up to D64971. While we need to insert the deref after
the offset, it needs to come before the remaining elements in the
original expression since the deref needs to happen before the LLVM
fragment if present.
Differential Revision: https://reviews.llvm.org/D65172
llvm-svn: 366865
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp (diff)
The file was modifiedllvm/test/Transforms/SafeStack/X86/debug-loc2.ll (diff)
Commit 305ace7cc8e6b02c1063820cfed1d7baeac0437f by maskray
[AArch64] Fix -Wunused-variable in -DLLVM_ENABLE_ASSERTIONS=off builds
after r366857
llvm-svn: 366866
The file was modifiedllvm/lib/Target/AArch64/AArch64InstructionSelector.cpp (diff)
Commit 8b7e82be12a03912725747fafc3a34ebb6159cd5 by czhengsz
[PowerPC][NFC] use opcode instead of MachineInstr for instrHasImmForm().
llvm-svn: 366867
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.cpp (diff)
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.h (diff)
Commit 09e6304440c08fe72b6ac05f922ab9d8b7f1e387 by rofirrim
[RISCV] Implement benchmark::cycleclock::Now
This is a cherrypick of D64237 onto llvm/utils/benchmark and
libcxx/utils/google-benchmark.
Differential Revision: https://reviews.llvm.org/D65142
llvm-svn: 366868
The file was modifiedlibcxx/utils/google-benchmark/src/cycleclock.h (diff)
The file was modifiedllvm/utils/benchmark/README.LLVM (diff)
The file was modifiedlibcxx/utils/google-benchmark/README.LLVM (diff)
The file was modifiedllvm/utils/benchmark/src/cycleclock.h (diff)
Commit b0ed5bea8812eabc87db124e7285356e3ad09020 by shauryab98
[Clangd] Fixed ExtractVariable for certain types of Exprs
Summary:
- Modified ExtractVariable for extraction of MemberExpr, DeclRefExpr and
Assignment Expr
- Removed extraction from label statements.
- Fixed unittests
Reviewers: sammccall, kadircet
Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D64717
llvm-svn: 366869
The file was modifiedclang-tools-extra/clangd/refactor/tweaks/ExtractVariable.cpp (diff)
The file was modifiedclang-tools-extra/clangd/unittests/TweakTests.cpp (diff)