search for: mri_mod

Displaying 5 results from an estimated 5 matches for "mri_mod".

Did you mean: mikmod
2017 Oct 10
2
Expose aliasing information in getModRefInfo (or viceversa?)
...with a, you can > actually clone foo here, change it to be pass-by-value, and promote the > argument inside of it (if you wanted to). > > So you can use this info to, for example, do interprocedural promotion. > > >> Are we instead looking to set a MRI_Must bit, disjunct of MRI_Mod, and >> test for MRI_Ref&MRI_Must or MRI_Mod&MRI_Must? >> > > Yes. > I didn't mean to pick on the example, sorry if that's how it came through. Since the consensus is to expose the Must info in ModRefInfo, I'm trying to figure out how to add it in a way th...
2017 Oct 10
4
Expose aliasing information in getModRefInfo (or viceversa?)
...tually clone foo here, change it to be pass-by-value, and promote the >> argument inside of it (if you wanted to). >> >> So you can use this info to, for example, do interprocedural promotion. >> >> >>> Are we instead looking to set a MRI_Must bit, disjunct of MRI_Mod, and >>> test for MRI_Ref&MRI_Must or MRI_Mod&MRI_Must? >>> >> >> Yes. >> > > I didn't mean to pick on the example, sorry if that's how it came through. > > Since the consensus is to expose the Must info in ModRefInfo, I'm trying &...
2017 Nov 28
1
Expose aliasing information in getModRefInfo (or viceversa?)
...My concern was with the users of getModReg(). In your new proposal, >> doing & on the result of getModRef() may yield unexpected results. >> >> E.g., “getModRef() & MRI_MustMod != 0” doesn’t imply that the >> instruction will write because the result might have been MRI_Mod (= >> NoModRef | MustMod). >> >> As long as this fact is properly document, I’m good :) (btw, thanks for >> fixing the documentation of the old MRI_* values; it was really misleading). >> >> >> >> Nuno >> >> >> >> P.S.: BTW, n...
2017 Oct 10
2
Expose aliasing information in getModRefInfo (or viceversa?)
...live on entry def, etc If I understand correctly, the necessary info for fp in this example is: isMustAlias (CallSite argument a, Value a) && getModRefBehavior(CallSite)== onlyReadsMemory. So adding a MRI_MustMod is insufficient? Are we instead looking to set a MRI_Must bit, disjunct of MRI_Mod, and test for MRI_Ref&MRI_Must or MRI_Mod&MRI_Must? In getModRefInfo(CS, Loc), the MRI_Must bit would then be set if doesAccessArgPointees and ArgAlias == MustAlias for all Args, which seems correct. I may be missing something here, I don't want to dive into the wrong implementation....
2017 Oct 10
2
Expose aliasing information in getModRefInfo (or viceversa?)
Yes, this is odd. On my clang.bc Without: 2.2967 ( 53.8%) 0.0242 ( 26.4%) 2.3210 ( 53.2%) 2.3227 ( 53.2%) Memory SSA 2.3364 ( 53.7%) 0.0246 ( 25.7%) 2.3610 ( 53.1%) 2.3636 ( 53.1%) Memory SSA 2.3353 ( 54.0%) 0.0258 ( 27.0%) 2.3611 ( 53.4%) 2.3632 ( 53.3%) Memory SSA With two getModRefInfo calls: 3.0302 ( 58.8%) 0.0328 ( 29.9%) 3.0630 ( 58.2%) 3.0858 ( 58.2%)