[all-commits] [llvm/llvm-project] 9c8746: [OpenMP] Use `abort` not `error` for fatal runtime...

Johannes Doerfert via All-commits all-commits at lists.llvm.org
Fri Jul 24 13:18:17 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 9c87466c3960145eb5baa2881d4239de1dcfbc6f
      https://github.com/llvm/llvm-project/commit/9c87466c3960145eb5baa2881d4239de1dcfbc6f
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2020-07-24 (Fri, 24 Jul 2020)

  Changed paths:
    M openmp/libomptarget/src/private.h

  Log Message:
  -----------
  [OpenMP] Use `abort` not `error` for fatal runtime exceptions

See PR46515 for the rational but generally, we want to *really* abort
not gracefully shut down.

Reviewed By: grokos, ABataev

Differential Revision: https://reviews.llvm.org/D83963


  Commit: ce2d69b5577314ee97504876381273bbcddca3c5
      https://github.com/llvm/llvm-project/commit/ce2d69b5577314ee97504876381273bbcddca3c5
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2020-07-24 (Fri, 24 Jul 2020)

  Changed paths:
    M llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
    A llvm/test/Transforms/Mem2Reg/alloca_addrspace.ll
    M llvm/test/Transforms/SROA/alloca-address-space.ll

  Log Message:
  -----------
  [SROA][Mem2Reg] Do not crash on alloca + addrspacecast

SROA knows that it can look through addrspacecast but
PromoteMemoryToRegister did not handle them. This caused an assertion
error for the test case, exposed while running
`Transforms/PhaseOrdering/inlining-alignment-assumptions.ll` with D83978
applied.

Reviewed By: arsenm

Differential Revision: https://reviews.llvm.org/D84085


  Commit: ce8928f2e4e5e9d192f2c603b37d32da92214ab1
      https://github.com/llvm/llvm-project/commit/ce8928f2e4e5e9d192f2c603b37d32da92214ab1
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2020-07-24 (Fri, 24 Jul 2020)

  Changed paths:
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/include/llvm/IR/Value.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/IR/Value.cpp
    M llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
    A llvm/test/Transforms/Mem2Reg/ignore-droppable.ll

  Log Message:
  -----------
  [Mem2Reg] Teach promote to register about droppable instructions

This is the first of two patches to address PR46753. We basically allow
mem2reg to promote allocas that are used in doppable instructions, for
now that means `llvm.assume`. The uses of the alloca (or a bitcast or
zero offset GEP from there) are replaced by `undef` in the droppable
instructions.

Reviewed By: Tyker

Differential Revision: https://reviews.llvm.org/D83976


  Commit: aa09db495a9b40de456e196c0deb6b98324779b9
      https://github.com/llvm/llvm-project/commit/aa09db495a9b40de456e196c0deb6b98324779b9
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2020-07-24 (Fri, 24 Jul 2020)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SROA.cpp
    A llvm/test/Transforms/SROA/ignore-droppable.ll

  Log Message:
  -----------
  [SROA] Teach promote to register about droppable instructions

This is the second of two patches to address PR46753. We basically allow
SROA to promote allocas that are used in doppable instructions, for
now that means `llvm.assume`. The (transitive) uses are replaced by
`undef` in the droppable instructions.

See also D83976.

Reviewed By: Tyker

Differential Revision: https://reviews.llvm.org/D83978


Compare: https://github.com/llvm/llvm-project/compare/dfa267a61c2b...aa09db495a9b


More information about the All-commits mailing list