On 03/15/2017 04:15 AM, Martin Liška wrote:
On 03/14/2017 11:27 PM, Ilya Enkovich wrote:
2017-03-10 16:15 GMT+03:00 Martin Liška <mli...@suse.cz>:
Hello.
Currently, __builtin_ia32_bndret is used for all functions that have
non-void
return type. I think the right fix is to return bounds just for a
bounded type.
Patch can bootstrap on x86_64-linux-gnu and survives regression tests.
Ready to be installed?
Martin
Hi,
The fix makes sense and allows you to pass the test but it seems like we
still have the issue in inlining which can result in bndret call with
wrong arg.
Hi.
The test I added does probably what you mean: a return value of integer
is casted
to a pointer type. Or?
Do you avoid all such cases by this fix? Can we still have similar
problem
if cast function with integer return type to a function with pointer
return type
and the inline the call (not sure if we can inline such calls)?
I think this fix still should go to trunk anyway.
Good, may I consider this as patch approval?
Yes. Ilya knows this stuff better than anyone, even if he's not listed
as an official maintainer.
jeff