[all-commits] [llvm/llvm-project] db5706: [Attributor] Use getAllocAlignment where possible ...

Philip Reames via All-commits all-commits at lists.llvm.org
Wed Jan 12 16:59:37 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: db57065b368ab4a078b749ccf14b0f384ab4571f
      https://github.com/llvm/llvm-project/commit/db57065b368ab4a078b749ccf14b0f384ab4571f
  Author: Philip Reames <listmail at philipreames.com>
  Date:   2022-01-12 (Wed, 12 Jan 2022)

  Changed paths:
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp

  Log Message:
  -----------
  [Attributor] Use getAllocAlignment where possible [NFC]

Inspired by D116971.


  Commit: 8e76720cf2c0fb230777e98ad5a41175efc4d404
      https://github.com/llvm/llvm-project/commit/8e76720cf2c0fb230777e98ad5a41175efc4d404
  Author: Philip Reames <listmail at philipreames.com>
  Date:   2022-01-12 (Wed, 12 Jan 2022)

  Changed paths:
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp

  Log Message:
  -----------
  [Attributor] Reuse object size evaluation code [NFC]


  Commit: d1f4c6a6112a9868f178d3a4c666f04ac5dc7415
      https://github.com/llvm/llvm-project/commit/d1f4c6a6112a9868f178d3a4c666f04ac5dc7415
  Author: Philip Reames <listmail at philipreames.com>
  Date:   2022-01-12 (Wed, 12 Jan 2022)

  Changed paths:
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/test/Transforms/Attributor/heap_to_stack.ll
    M llvm/test/Transforms/Attributor/lowerheap.ll
    M llvm/test/Transforms/Attributor/value-simplify-pointer-info.ll

  Log Message:
  -----------
  [Attributor] Generalize calloc handling in heap-to-stack for any init value [NFC]

Rewrite the calloc specific handling in heap-to-stack to allow arbitrary init values.  The basic problem being solved is that if an allocation is initilized to anything other than zero, this must be explicitly done for the formed alloca as well.

This covers the calloc case today, but once a couple of earlier guards are removed in this code, downstream allocators with other init values could also be handled.

Inspired by discussion on D116971


Compare: https://github.com/llvm/llvm-project/compare/1adeebc2cf3e...d1f4c6a6112a


More information about the All-commits mailing list