SuccessChanges

Changes from Git (git http://labmaster3.local/git/llvm-project.git)

Summary

  1. [MLIR] Fix broken link locations after move to monorepo (details)
  2. [PowerPC] [NFC] set instruction number as 1st priority of lsr cost (details)
  3. [MC] Don't resolve relocations referencing STB_LOCAL STT_GNU_IFUNC (details)
  4. [ELF] Add -z force-ibt and -z shstk for Intel Control-flow Enforcement (details)
  5. [OpenMP][Tool] Make tests for archer dependent on TSan (details)
  6. [ELF] Delete unintended --force-bti (details)
  7. [OpenMP][Tool] Improving stack trace for Archer (details)
  8. [AMDGPU] Add gfx9 assembler and disassembler test cases (details)
  9. [AMDGPU] Improve error checking in gfx10 assembler tests (details)
  10. [AMDGPU] Remove duplicate gfx10 assembler and disassembler tests (details)
  11. [lldb] Fix that SBThread.GetStopDescription is returning strings with (details)
Commit a7cac2bd4b6812ea6b59b5fa0298eadf3815a3b0 by aminim
[MLIR] Fix broken link locations after move to monorepo
I used the codemod python tool to do this with the following commands:
codemod 'tensorflow/mlir/blob/master/include'
'llvm/llvm-project/blob/master/mlir/include' codemod
'tensorflow/mlir/blob/master' 'llvm/llvm-project/blob/master/mlir'
codemod 'tensorflow/mlir' 'llvm-project/llvm'
Differential Revision: https://reviews.llvm.org/D72244
The file was modifiedmlir/examples/toy/Ch2/include/toy/Dialect.h
The file was modifiedmlir/examples/toy/Ch7/include/toy/Dialect.h
The file was modifiedmlir/examples/toy/README.md
The file was modifiedmlir/examples/toy/Ch4/include/toy/Dialect.h
The file was modifiedmlir/examples/toy/Ch6/include/toy/Dialect.h
The file was modifiedmlir/docs/Dialects/Vector.md
The file was modifiedmlir/docs/Tutorials/Toy/Ch-7.md
The file was modifiedmlir/examples/toy/Ch5/include/toy/Dialect.h
The file was modifiedmlir/examples/toy/Ch3/include/toy/Dialect.h
Commit 671544c25b1215433bc22d475db7eaef51096ea5 by czhengsz
[PowerPC] [NFC] set instruction number as 1st priority of lsr cost
model.
The file was addedllvm/test/CodeGen/PowerPC/lsr-insns-cost.ll
Commit 0136f226c4e46258ea73fcb994f6559cec4a9aa2 by maskray
[MC] Don't resolve relocations referencing STB_LOCAL STT_GNU_IFUNC
The file was modifiedllvm/test/MC/ELF/target-in-same-section.s
The file was modifiedllvm/lib/MC/ELFObjectWriter.cpp
Commit 7cd429f27d4886bb841ed0e3702e970f5f6cccd1 by maskray
[ELF] Add -z force-ibt and -z shstk for Intel Control-flow Enforcement
Technology
This patch is a joint work by Rui Ueyama and me based on D58102 by Xiang
Zhang.
It adds Intel CET (Control-flow Enforcement Technology) support to lld.
The implementation follows the draft version of psABI which you can
download from https://github.com/hjl-tools/x86-psABI/wiki/X86-psABI.
CET introduces a new restriction on indirect jump instructions so that
you can limit the places to which you can jump to using indirect jumps.
In order to use the feature, you need to compile source files with
-fcf-protection=full.
* IBT is enabled if all input files are compiled with the flag. To force
enabling ibt, pass -z force-ibt.
* SHSTK is enabled if all input files are compiled with the flag, or if
-z shstk is specified.
IBT-enabled executables/shared objects have two PLT sections, ".plt" and
".plt.sec".  For the details as to why we have two sections, please read
the comments.
Reviewed By: xiangzhangllvm
Differential Revision: https://reviews.llvm.org/D59780
The file was modifiedlld/ELF/SyntheticSections.cpp
The file was modifiedlld/ELF/Config.h
The file was modifiedlld/ELF/Driver.cpp
The file was modifiedlld/ELF/Arch/X86.cpp
The file was addedlld/test/ELF/x86-64-feature-cet.s
The file was modifiedlld/ELF/SyntheticSections.h
The file was modifiedlld/ELF/Arch/X86_64.cpp
The file was removedlld/test/ELF/i386-cet.s
The file was modifiedlld/docs/ld.lld.1
The file was modifiedlld/ELF/Target.h
The file was removedlld/test/ELF/x86-64-cet.s
The file was modifiedlld/ELF/Writer.cpp
The file was addedlld/test/ELF/i386-feature-cet.s
The file was modifiedlld/ELF/Options.td
Commit 84637408f2e63821014974dac08dee50bb197c1b by protze
[OpenMP][Tool] Make tests for archer dependent on TSan
If the openmp project is built standalone, the test compiler is feature
tested for an available -fsanitize=thread flag. If the openmp project is
built as part of llvm, the target tsan is needed to test archer.
An additional line (requires tsan) was introduced to the tests, this
patch updates the line numbers for the race.
Follow-up for 77ad98c
Reviewed By: jdoerfert
Differential Revision: https://reviews.llvm.org/D71914
The file was modifiedopenmp/cmake/DetectTestCompiler/CMakeLists.txt
The file was modifiedopenmp/tools/archer/tests/races/lock-nested-unrelated.c
The file was modifiedopenmp/tools/archer/tests/races/task-taskgroup-unrelated.c
The file was modifiedopenmp/tools/archer/tests/races/task-two.c
The file was modifiedopenmp/tools/archer/tests/races/critical-unrelated.c
The file was modifiedopenmp/tools/archer/tests/races/task-dependency.c
The file was modifiedopenmp/tools/archer/tests/CMakeLists.txt
The file was modifiedopenmp/tools/archer/tests/lit.site.cfg.in
The file was modifiedopenmp/tools/archer/tests/races/lock-unrelated.c
The file was modifiedopenmp/tools/archer/tests/races/parallel-simple.c
The file was modifiedopenmp/tools/archer/tests/races/task-taskwait-nested.c
The file was modifiedopenmp/cmake/OpenMPTesting.cmake
The file was modifiedopenmp/tools/archer/tests/lit.cfg
Commit d9819f366233e53427d0929729a58f85dc748cfb by maskray
[ELF] Delete unintended --force-bti
The file was modifiedlld/ELF/Options.td
Commit ed810da73270267082c347bc2919eebb7978a2fe by protze
[OpenMP][Tool] Improving stack trace for Archer
The OpenMP runtime is not instrumented, so entering the runtime leaves
no hint on the source line of the pragma on ThreadSanitizer's function
stack.
This patch adds function entry/exit annotations for OpenMP parallel
regions, and synchronization regions (barrier, taskwait, taskgroup).
Reviewed By: jdoerfert
Differential Revision: https://reviews.llvm.org/D70408
The file was modifiedopenmp/tools/archer/ompt-tsan.cpp
Commit 63c3691f79179db9a16f260f1cf81475fdfef060 by jay.foad
[AMDGPU] Add gfx9 assembler and disassembler test cases
Summary: This adds assembler tests for cases that were previously only
in the disassembler tests, and vice versa.
Reviewers: rampitec, arsenm, nhaehnle
Subscribers: kzhuravl, jvesely, wdng, yaxunl, dstuttard, tpr, t-tye,
jfb, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D72592
The file was modifiedllvm/test/MC/AMDGPU/gfx9_asm_all.s
The file was modifiedllvm/test/MC/Disassembler/AMDGPU/gfx9_dasm_all.txt
Commit 0950de264e37264b9f767a898bd839d9fcb7328f by jay.foad
[AMDGPU] Improve error checking in gfx10 assembler tests
Summary: This adds checks that the expected error was actually reported
against the correct instruction, and fixes a couple of problems that
that showed up: one incorrect W32-ERR:
v_cmp_class_f16_sdwa vcc, v1, v2 src0_sel:DWORD src1_sel:DWORD
// W64: encoding: [0xf9,0x04,0x1e,0x7d,0x01,0x00,0x06,0x06]
-// W32-ERR: error: invalid operand for instruction
+// W32-ERR: error: {{instruction not supported on this GPU|invalid
operand for instruction}}
and one missing W32-ERR:
v_cmp_class_f16_sdwa s[6:7], v1, v2 src0_sel:DWORD src1_sel:DWORD
// W64: encoding: [0xf9,0x04,0x1e,0x7d,0x01,0x86,0x06,0x06]
+// W32-ERR: error: invalid operand for instruction
Reviewers: rampitec, arsenm
Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr,
t-tye, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D72611
The file was modifiedllvm/test/MC/AMDGPU/gfx10_asm_all.s
Commit 440ce5164f52a6b7cdf70322cc1c95656cac9aa9 by jay.foad
[AMDGPU] Remove duplicate gfx10 assembler and disassembler tests
Summary: Depends on D72611.
Reviewers: rampitec, arsenm
Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr,
t-tye, jfb, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D72616
The file was modifiedllvm/test/MC/AMDGPU/gfx10_asm_all.s
The file was modifiedllvm/test/MC/Disassembler/AMDGPU/gfx10_dasm_all.txt
Commit 61b6a4e82653e1209126404d33ad20a268f55db1 by Raphael Isemann
[lldb] Fix that SBThread.GetStopDescription is returning strings with
uninitialized memory at the end.
Summary:
`SBThread.GetStopDescription` is a curious API as it takes a buffer
length as a parameter that specifies how many bytes the buffer we pass
has. Then we fill the buffer until the specified length (or the length
of the stop description string) and return the string length. If the
buffer is a nullptr however, we instead return how many bytes we would
have written to the buffer so that the user can allocate a buffer with
the right size and pass that size to a subsequent
`SBThread.GetStopDescription` call.
Funnily enough, it is not possible to pass a nullptr via the Python SWIG
bindings, so that might be the first API in LLDB that is not only hard
to use correctly but impossible to use correctly. The only way to call
this function via Python is to throw in a large size limit that is
hopefully large enough to contain the stop description (otherwise we
only get the truncated stop description).
Currently passing a size limit that is smaller than the returned stop
description doesn't cause the Python bindings to return the stop
description but instead the truncated stop description + uninitialized
characters at the end of the string. The reason for this is that we
return the result of `snprintf` from the method which returns the amount
of bytes that *would* have been written (which is larger than the
buffer). This causes our Python bindings to return a string that is as
large as full stop description but the buffer that has been filled is
only as large as the passed in buffer size.
This patch fixes this issue by just recalculating the string length in
our buffer instead of relying on the wrong return value. We also have to
do this in a new type map as the old type map is also used for all
methods with the given argument pair `char *dst, size_t dst_len` (e.g.
SBProcess.GetSTDOUT`). These methods have different semantics for these
arguments and don't null-terminate the returned buffer (they instead
return the size in bytes) so we can't change the existing typemap
without breaking them.
Reviewers: labath, jingham
Reviewed By: labath
Subscribers: clayborg, shafik, abidh, JDevlieghere, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D72086
The file was modifiedlldb/packages/Python/lldbsuite/test/python_api/thread/TestThreadAPI.py
The file was modifiedlldb/bindings/interface/SBThread.i
The file was modifiedlldb/bindings/python/python-typemaps.swig