SuccessChanges

Summary

  1. [scudo] Combine cmake/ninja steps (details)
  2. [scudo] Print executed tests (details)
  3. [scudo] Install cross compiled libs into STAGE1 (details)
Commit 409d93787e66564154499721a6ccd4057a7fb36f by Vitaly Buka
[scudo] Combine cmake/ninja steps
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_qemu.sh (diff)
Commit 43acf06e868448cb510edb1a38fa3303856685dd by Vitaly Buka
[scudo] Print executed tests
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_qemu.sh (diff)
Commit 73b441c5f00a417b58ec16551519afca2198053b by Vitaly Buka
[scudo] Install cross compiled libs into STAGE1

We need this for LIT future lit tests.
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_qemu.sh (diff)

Summary

  1. Apply [[standalone_debug]] to some types in the STL. (details)
  2. [mlir] Speed up Lexer::getEncodedSourceLocation (details)
  3. Add a helper function to convert LogicalResult to int for return from main (details)
  4. [X86FixupLEAs] Transform the sequence LEA/SUB to SUB/SUB (details)
  5. [Attributor] Change AAExecutionDomain to only accept intrinsics (details)
Commit 7c2f58278e664d336e9d0ef0687bdd6c3837dc03 by akhuang
Apply [[standalone_debug]] to some types in the STL.

Add this attribute to some types to ensure that they have
debug info.
The debug info for these classes are required for debuggers to display
some STL types. With constructor homing (a new debug info optimization)
their debug info isn't emitted because their constructors are never
called.

The list of types with the attribute added are __hash_value_type,
__value_type, __tree_node_base, __tree_node, __hash_node, __list_node,
and __forward_list_node.

Differential Revision: https://reviews.llvm.org/D98750
The file was modifiedlibcxx/include/forward_list
The file was modifiedlibcxx/include/unordered_map
The file was modifiedlibcxx/include/__hash_table
The file was modifiedlibcxx/include/map
The file was modifiedlibcxx/include/__config
The file was modifiedlibcxx/include/list
The file was modifiedlibcxx/include/__tree
Commit 861d69a5259653f60d59795597493a7939b794fe by riddleriver
[mlir] Speed up Lexer::getEncodedSourceLocation

We currently use SourceMgr::getLineAndColumn to get the line and column for an SMLoc, but this includes a call to StringRef::find_last_of that ends up dominating compile time. In D102567, we start creating locations from the input file for block arguments which resulted in an extreme performance regression for modules with very large amounts of block arguments. This revision switches to just using a pointer offset from the beginning of the line to calculate the column(all MLIR files are simple ascii), resulting in a compile time reduction from 4700 seconds (1 hour and 18 minutes) to 8 seconds.

Differential Revision: https://reviews.llvm.org/D102734
The file was modifiedmlir/lib/Parser/Lexer.cpp
Commit 58369fce30af484889356f225d89cb0b32009206 by joker.eph
Add a helper function to convert LogicalResult to int for return from main

At present, a lot of code contains main function bodies like "return failed(mlir::MlirOptMain(...);". This is unfortunate for two reasons: a) it uses ADL, which is maybe not what the free "failed" function was designed for; and b) it is a bit awkward to read, requring the reader to both understand the boolean nature of the value and the semantics of main's return value. (And it's also not portable, since 1 is not a portable success value.)

The replacement code, `return mlir::AsMainReturnCode(mlir::MlirOptMain(...))` is a bit more self-explanatory.

The change applies the new function to a few internal uses of MlirOptMain, too.

Reviewed By: mehdi_amini

Differential Revision: https://reviews.llvm.org/D102641
The file was modifiedmlir/tools/mlir-opt/mlir-opt.cpp
The file was modifiedmlir/examples/standalone/standalone-opt/standalone-opt.cpp
The file was modifiedmlir/include/mlir/Support/MlirOptMain.h
Commit 528bc10e95d5f9d6a338f9bab5e91d7265d1cf05 by carrot
[X86FixupLEAs] Transform the sequence LEA/SUB to SUB/SUB

This patch transforms the sequence

    lea (reg1, reg2), reg3
    sub reg3, reg4

to two sub instructions

    sub reg1, reg4
    sub reg2, reg4

Similar optimization can also be applied to LEA/ADD sequence.
The modifications to TwoAddressInstructionPass is to ensure the operands of ADD
instruction has expected order (the dest register of LEA should be src register
of ADD).

Differential Revision: https://reviews.llvm.org/D101970
The file was modifiedllvm/test/CodeGen/X86/vp2intersect_multiple_pairs.ll
The file was modifiedllvm/lib/Target/X86/X86FixupLEAs.cpp
The file was modifiedllvm/lib/Target/X86/X86InstrInfo.cpp
The file was modifiedllvm/test/CodeGen/X86/2009-03-23-MultiUseSched.ll
The file was modifiedllvm/include/llvm/CodeGen/TargetInstrInfo.h
The file was modifiedllvm/test/CodeGen/X86/lea-opt2.ll
The file was modifiedllvm/lib/Target/X86/X86InstrInfo.h
The file was modifiedllvm/lib/CodeGen/TwoAddressInstructionPass.cpp
Commit 68abc3d26429ddc16af691c7895220b47819c869 by huberjn
[Attributor] Change AAExecutionDomain to only accept intrinsics

Summary:
The OpenMP runtime functions don't always provide unique thread ID's to
determine if a basic block is truly single-threaded. Change the implementation
to only check NVPTX intrinsics for now.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D102700
The file was modifiedllvm/test/Transforms/OpenMP/single_threaded_execution.ll
The file was modifiedllvm/lib/Transforms/IPO/OpenMPOpt.cpp

Summary

  1. [scudo] Combine cmake/ninja steps (details)
  2. [scudo] Print executed tests (details)
  3. [scudo] Install cross compiled libs into STAGE1 (details)
Commit 409d93787e66564154499721a6ccd4057a7fb36f by Vitaly Buka
[scudo] Combine cmake/ninja steps
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_qemu.sh
Commit 43acf06e868448cb510edb1a38fa3303856685dd by Vitaly Buka
[scudo] Print executed tests
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_qemu.sh
Commit 73b441c5f00a417b58ec16551519afca2198053b by Vitaly Buka
[scudo] Install cross compiled libs into STAGE1

We need this for LIT future lit tests.
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_qemu.sh