This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [aarch64] disable shrink wrapping when tracking speculative execution


Hi Richard,

On Mon, Nov 05, 2018 at 10:09:30AM +0000, Richard Earnshaw (lists) wrote:
> >>> Shouldn't you be able to do this per function at least?
> >>
> >> do what per function?  track speculation?
> > 
> > disable shrink-wrapping only when any speculation was there
> > (this is about __bultin_speculation_safe_value, no?)
> 
> Only indirectly.  This is about the tracking code that tracks
> conditional branches and propagates that information through call/return
> sequences.  Shrink wrapping messes with the prologue/epilogue sequences
> after the speculation tracking pass has run and unknowingly deletes some
> of the additional code that was previously inserted by the tracking pass.

Do you have an example of this?  Shrink-wrapping does not generally
delete any code.


Segher


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]