Skip to content
Snippets Groups Projects
  • Iain Buclaw's avatar
    c17044e5
    d/i386: Add CET TargetInfo key and predefined version [PR118654] · c17044e5
    Iain Buclaw authored
    Adds a new i386 d_target_info_spec entry to handle requests for
    `__traits(getTargetInfo, "CET")', and add predefined target version
    `GNU_CET' when the option `-fcf-protecton' is used.
    
    Both TargetInfo key and predefined version have been added to the D
    front-end documentation.
    
    In the library, `GNU_CET' replaces the existing use of the user-defined
    version flag `CET' when building libphobos.
    
    	PR d/118654
    
    gcc/ChangeLog:
    
    	* config/i386/i386-d.cc (ix86_d_target_versions): Predefine GNU_CET.
    	(ix86_d_handle_target_cf_protection): New.
    	(ix86_d_register_target_info): Add 'CET' TargetInfo key.
    
    gcc/d/ChangeLog:
    
    	* implement-d.texi: Document CET version and traits key.
    
    libphobos/ChangeLog:
    
    	* Makefile.in: Regenerate.
    	* configure: Regenerate.
    	* configure.ac: Remove CET_DFLAGS.
    	* libdruntime/Makefile.am: Replace CET_DFLAGS with CET_FLAGS.
    	* libdruntime/Makefile.in: Regenerate.
    	* libdruntime/core/thread/fiber/package.d: Replace CET with GNU_CET.
    	* src/Makefile.am: Replace CET_DFLAGS with CET_FLAGS.
    	* src/Makefile.in: Regenerate.
    	* testsuite/Makefile.in: Regenerate.
    	* testsuite/testsuite_flags.in: Replace CET_DFLAGS with CET_FLAGS.
    
    gcc/testsuite/ChangeLog:
    
    	* gdc.dg/target/i386/i386.exp: New test.
    	* gdc.dg/target/i386/targetinfo_CET.d: New test.
    c17044e5
    History
    d/i386: Add CET TargetInfo key and predefined version [PR118654]
    Iain Buclaw authored
    Adds a new i386 d_target_info_spec entry to handle requests for
    `__traits(getTargetInfo, "CET")', and add predefined target version
    `GNU_CET' when the option `-fcf-protecton' is used.
    
    Both TargetInfo key and predefined version have been added to the D
    front-end documentation.
    
    In the library, `GNU_CET' replaces the existing use of the user-defined
    version flag `CET' when building libphobos.
    
    	PR d/118654
    
    gcc/ChangeLog:
    
    	* config/i386/i386-d.cc (ix86_d_target_versions): Predefine GNU_CET.
    	(ix86_d_handle_target_cf_protection): New.
    	(ix86_d_register_target_info): Add 'CET' TargetInfo key.
    
    gcc/d/ChangeLog:
    
    	* implement-d.texi: Document CET version and traits key.
    
    libphobos/ChangeLog:
    
    	* Makefile.in: Regenerate.
    	* configure: Regenerate.
    	* configure.ac: Remove CET_DFLAGS.
    	* libdruntime/Makefile.am: Replace CET_DFLAGS with CET_FLAGS.
    	* libdruntime/Makefile.in: Regenerate.
    	* libdruntime/core/thread/fiber/package.d: Replace CET with GNU_CET.
    	* src/Makefile.am: Replace CET_DFLAGS with CET_FLAGS.
    	* src/Makefile.in: Regenerate.
    	* testsuite/Makefile.in: Regenerate.
    	* testsuite/testsuite_flags.in: Replace CET_DFLAGS with CET_FLAGS.
    
    gcc/testsuite/ChangeLog:
    
    	* gdc.dg/target/i386/i386.exp: New test.
    	* gdc.dg/target/i386/targetinfo_CET.d: New test.