Excerpts from H.J. Lu's message of September 8, 2020 4:09 am:
> On Mon, Sep 7, 2020 at 2:35 PM Iain Buclaw <ibuc...@gdcproject.org> wrote:
>>
>> Hi,
>>
>> This patch removes whatever CET support was in the switchContext routine
>> for x86 D runtime, and instead uses the ucontext fallback, which propely
>> handles shadow stack handling.
>>
>> Rather than implementing support within D runtime itself, use libc
>> getcontext/setcontext functions if CET is enabled instead.
>>
>> HJ, does this look reasonable before I commit it?  The detection has
>> been done at configure-time, rather than adding a predefined version
>> condition for CET within the compiler.
>>
>> Done regression testing on x86_64-linux-gnu/-m32/-mx32.
>>
>> Regards
>> Iain.
>>
>> ---
>> libphobos/ChangeLog:
>>
>>         PR d/95680
>>         * Makefile.in: Regenerate.
>>         * configure: Regenerate.
>>         * configure.ac (DCFG_ENABLE_CET): Substitute.
>>         * libdruntime/Makefile.in: Regenerate.
>>         * libdruntime/config/x86/switchcontext.S: Remove CET support code.
>>         * libdruntime/core/thread.d: Import gcc.config.  Don't set version
>>         AsmExternal when GNU_Enable_CET is true.
>>         * libdruntime/gcc/config.d.in (GNU_Enable_CET): Define.
>>         * src/Makefile.in: Regenerate.
>>         * testsuite/Makefile.in: Regenerate.
> 
> Looks good.  I can try it on Tiger Lake after it has been checked in.
> 

OK, I have committed it as r11-3047.

Iain.

Reply via email to