[all-commits] [llvm/llvm-project] e75a2d: [tests] Stablize tests for possible change in dere...
Philip Reames via All-commits
all-commits at lists.llvm.org
Wed Jul 14 13:05:57 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: e75a2dfe209d9cc68e4d9813a38441c45d51d8bb
https://github.com/llvm/llvm-project/commit/e75a2dfe209d9cc68e4d9813a38441c45d51d8bb
Author: Philip Reames <listmail at philipreames.com>
Date: 2021-07-14 (Wed, 14 Jul 2021)
Changed paths:
M llvm/test/Analysis/ValueTracking/deref-bitcast-of-gep.ll
M llvm/test/CodeGen/X86/hoist-invariant-load.ll
M llvm/test/CodeGen/X86/licm-dominance.ll
M llvm/test/CodeGen/X86/load-partial.ll
M llvm/test/CodeGen/X86/memcmp-mergeexpand.ll
M llvm/test/Transforms/GVN/PRE/load-pre-licm.ll
M llvm/test/Transforms/GVN/PRE/pre-load.ll
M llvm/test/Transforms/GVN/loadpre-context.ll
M llvm/test/Transforms/InstCombine/call-guard.ll
M llvm/test/Transforms/InstCombine/masked_intrinsics-inseltpoison.ll
M llvm/test/Transforms/InstCombine/masked_intrinsics.ll
M llvm/test/Transforms/InstCombine/select.ll
M llvm/test/Transforms/InstCombine/strcmp-memcmp.ll
M llvm/test/Transforms/JumpThreading/guards.ll
M llvm/test/Transforms/LICM/hoist-deref-load.ll
M llvm/test/Transforms/MemCpyOpt/callslot_deref.ll
M llvm/test/Transforms/MergeICmps/X86/alias-merge-blocks.ll
M llvm/test/Transforms/MergeICmps/X86/entry-block-shuffled.ll
M llvm/test/Transforms/MergeICmps/X86/gep-references-bb.ll
M llvm/test/Transforms/MergeICmps/X86/int64-and-ptr.ll
M llvm/test/Transforms/MergeICmps/X86/multiple-blocks-does-work.ll
M llvm/test/Transforms/MergeICmps/X86/pair-int32-int32.ll
M llvm/test/Transforms/MergeICmps/X86/split-block-does-work.ll
M llvm/test/Transforms/SimplifyCFG/X86/SpeculativeExec.ll
M llvm/test/Transforms/TailCallElim/reorder_load.ll
M llvm/test/Transforms/VectorCombine/X86/load-inseltpoison.ll
M llvm/test/Transforms/VectorCombine/X86/load.ll
Log Message:
-----------
[tests] Stablize tests for possible change in deref semantics
There's a potential change in dereferenceability attribute semantics in the nearish future. See llvm-dev thread "RFC: Decomposing deref(N) into deref(N) + nofree" and D99100 for context.
This change simply adds appropriate attributes to tests to keep transform logic exercised under both old and new/proposed semantics. Note that for many of these cases, O3 would infer exactly these attributes on the test IR.
This change handles the idiomatic pattern of a dereferenceable object being passed to a call which can not free that memory. There's a couple other tests which need more one-off attention, they'll be handled in another change.
More information about the All-commits
mailing list