[PATCH] D83762: [Attributor][WIP] allow multiple branches in followUsesInMBEC
Johannes Doerfert via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sat Jul 18 18:25:28 PDT 2020
jdoerfert added inline comments.
================
Comment at: llvm/lib/Transforms/IPO/AttributorAttributes.cpp:662
+ ChangeStatus CS;
+ // TODO: set upper bound of number of iteration as command line option
+ unsigned Iteration = 0;
----------------
Let's include this as part of the patch right away.
================
Comment at: llvm/test/Transforms/Attributor/dereferenceable-1.ll:548
;
; FIXME: %ptr should be dereferenceable(4)
define dso_local void @rec-branch-1(i32 %a, i32 %b, i32 %c, i32* %ptr) {
----------------
Remove the fixme ;)
================
Comment at: llvm/test/Transforms/Attributor/misc.ll:35
; IS__CGSCC____-NEXT: [[TMP1:%.*]] = bitcast i32* [[A]] to i8*
-; IS__CGSCC____-NEXT: call void [[FP]](i8* [[TMP1]])
+; IS__CGSCC____-NEXT: call void [[FP]](i8* nonnull align 4 dereferenceable(4) [[TMP1]])
; IS__CGSCC____-NEXT: ret void
----------------
We didn't derive this because we "didn't want to". There is some logic to avoid explicitly deriving information for the arguments of calls to declarations. I have to think about this.
================
Comment at: llvm/test/Transforms/Attributor/noalias.ll:701
+; IS__TUNIT_NPM: if.end3:
+; IS__TUNIT_NPM-NEXT: ret void
;
----------------
I looks like we lost the align on
```
; IS__TUNIT_NPM-NEXT: tail call void @make_alias(i32* nofree writeonly [[P]])
```
That is odd.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D83762/new/
https://reviews.llvm.org/D83762
More information about the llvm-commits
mailing list