RFR: 8186780: clang-4.0 fastdebug assertion failure in os_linux_x86:os::verify_stack_alignment()

Thomas Stüfe thomas.stuefe at gmail.com
Thu Jun 21 12:37:21 UTC 2018


On Thu, Jun 21, 2018 at 1:27 PM, David Holmes <david.holmes at oracle.com> wrote:
> On 21/06/2018 10:05 AM, Martin Buchholz wrote:
>>
>> On Wed, Jun 20, 2018 at 4:03 PM, Martin Buchholz <martinrb at google.com
>> <mailto:martinrb at google.com>> wrote:
>>
>>     Hi David and build-dev folk,
>>
>>     After way too much build/hotspot hacking, I have a better fix:
>>
>>     clang inlined os::current_stack_pointer into its caller __in the
>>     same translation unit___ (that could be fixed in a separate change)
>>     so of course in this case it didn't have to follow the ABI.  Fix is
>>     obvious in hindsight:
>>
>>     -address os::current_stack_pointer() {
>>     +NOINLINE address os::current_stack_pointer() {
>>
>>
>> If y'all like the addition of NOINLINE, it should probably be added to all
>> of the 14 variants of os::current_stack_pointer.
>> Gives me a chance to try out the submit repo.
>
>
> I can't help but think other platforms actually rely on it being inlined so
> that it really does return the stack pointer of the method calling
> os::current_stack_pointer!
>

But we only inline today if caller is in the same translation unit and
builds with optimization, no?

..Thomas

> David



More information about the build-dev mailing list