search for: d30703

Displaying 3 results from an estimated 3 matches for "d30703".

2018 Sep 11
2
Byte-wide stores aren't coalesced if interspersed with other stores
...IRC Roman Lebedev pointed out https://reviews.llvm.org/D48725 which > > might address this indirectly. But I'm somewhat doubtful that that's > > the most straightforward way to optimize this kind of code? > > That doesn't help, but it turns out that //reviews.llvm.org/D30703 can > kinda somwhat help by adding a redundant > %i32ptr = bitcast i8* %0 to i32* > store i32 0, i32* %i32ptr > > at the start. Then dse-partial-store-merging does its magic and > optimizes the sub-stores away. But it's fairly ugly to manually have to > add superflous...
2018 Sep 10
2
Byte-wide stores aren't coalesced if interspersed with other stores
Hi, I have, in postres, a piece of IR that, after inlining and constant propagation boils (when cooked on really high heat) down to (also attached for your convenience): source_filename = "pg" target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-pc-linux-gnu" define void @evalexpr_0_0(i8* align 8 noalias, i32* align 8 noalias) {
2018 Sep 11
2
Byte-wide stores aren't coalesced if interspersed with other stores
....llvm.org/D48725 > which > > > > might address this indirectly. But I'm somewhat doubtful that that's > > > > the most straightforward way to optimize this kind of code? > > > > > > That doesn't help, but it turns out that //reviews.llvm.org/D30703 can > > > kinda somwhat help by adding a redundant > > > %i32ptr = bitcast i8* %0 to i32* > > > store i32 0, i32* %i32ptr > > > > > > at the start. Then dse-partial-store-merging does its magic and > > > optimizes the sub-stores away. But i...