Even though noundef IR attribute might be attached to non-void type values, AANoUndef is mistakenly identified for pointer type values only.
This patch fixes that.
Details
Diff Detail
Event Timeline
| llvm/test/Transforms/Attributor/IPConstantProp/PR16052.ll | ||
|---|---|---|
| 22 | Hm,... I think this exposes a problem. Could you take a look why we get a noundef here? | |
| llvm/test/Transforms/Attributor/IPConstantProp/PR16052.ll | ||
|---|---|---|
| 22 | I overlooked this problem, thanks. | |
| llvm/test/Transforms/Attributor/IPConstantProp/PR16052.ll | ||
|---|---|---|
| 22 | I made a new patch for this. D86835 | |
LGTM
| llvm/test/Transforms/Attributor/IPConstantProp/PR16052.ll | ||
|---|---|---|
| 22 | It seems I did not properly read what was happening. sdiv .., undef is UB. So deriving noundef for the result is OK. Eventually we should replace this with unreachable but not here. | |
Hm,... I think this exposes a problem. Could you take a look why we get a noundef here?