public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH 0/5] x86: CVE-2017-5715, aka Spectre
@ 2018-01-14  3:37 H.J. Lu
  2018-01-14  3:37 ` [PATCH 5/5] x86: Disallow -mindirect-branch=/-mfunction-return= with -mcmodel=large H.J. Lu
                   ` (5 more replies)
  0 siblings, 6 replies; 120+ messages in thread
From: H.J. Lu @ 2018-01-14  3:37 UTC (permalink / raw)
  To: gcc-patches

This set of patches for GCC 8 mitigates variant #2 of the speculative
execution vulnerabilities on x86 processors identified by CVE-2017-5715,
aka Spectre.  They convert indirect branches and function returns to
call and return thunks to avoid speculative execution via indirect
call, jmp and ret.

H.J. Lu (5):
  x86: Add -mindirect-branch=
  x86: Add -mfunction-return=
  x86: Add -mindirect-branch-register
  x86: Add 'V' register operand modifier
  x86: Disallow -mindirect-branch=/-mfunction-return= with
    -mcmodel=large

 gcc/config/i386/constraints.md                     |  12 +-
 gcc/config/i386/i386-opts.h                        |  13 +
 gcc/config/i386/i386-protos.h                      |   2 +
 gcc/config/i386/i386.c                             | 822 ++++++++++++++++++++-
 gcc/config/i386/i386.h                             |  10 +
 gcc/config/i386/i386.md                            |  69 +-
 gcc/config/i386/i386.opt                           |  28 +
 gcc/config/i386/predicates.md                      |  21 +-
 gcc/doc/extend.texi                                |  22 +
 gcc/doc/invoke.texi                                |  41 +-
 gcc/testsuite/gcc.target/i386/indirect-thunk-1.c   |  19 +
 gcc/testsuite/gcc.target/i386/indirect-thunk-10.c  |   7 +
 gcc/testsuite/gcc.target/i386/indirect-thunk-2.c   |  19 +
 gcc/testsuite/gcc.target/i386/indirect-thunk-3.c   |  20 +
 gcc/testsuite/gcc.target/i386/indirect-thunk-4.c   |  20 +
 gcc/testsuite/gcc.target/i386/indirect-thunk-5.c   |  16 +
 gcc/testsuite/gcc.target/i386/indirect-thunk-6.c   |  17 +
 gcc/testsuite/gcc.target/i386/indirect-thunk-7.c   |  43 ++
 gcc/testsuite/gcc.target/i386/indirect-thunk-8.c   |   7 +
 gcc/testsuite/gcc.target/i386/indirect-thunk-9.c   |   7 +
 .../gcc.target/i386/indirect-thunk-attr-1.c        |  22 +
 .../gcc.target/i386/indirect-thunk-attr-10.c       |   9 +
 .../gcc.target/i386/indirect-thunk-attr-11.c       |   9 +
 .../gcc.target/i386/indirect-thunk-attr-2.c        |  20 +
 .../gcc.target/i386/indirect-thunk-attr-3.c        |  21 +
 .../gcc.target/i386/indirect-thunk-attr-4.c        |  20 +
 .../gcc.target/i386/indirect-thunk-attr-5.c        |  22 +
 .../gcc.target/i386/indirect-thunk-attr-6.c        |  21 +
 .../gcc.target/i386/indirect-thunk-attr-7.c        |  44 ++
 .../gcc.target/i386/indirect-thunk-attr-8.c        |  41 +
 .../gcc.target/i386/indirect-thunk-attr-9.c        |   9 +
 .../gcc.target/i386/indirect-thunk-bnd-1.c         |  19 +
 .../gcc.target/i386/indirect-thunk-bnd-2.c         |  20 +
 .../gcc.target/i386/indirect-thunk-bnd-3.c         |  18 +
 .../gcc.target/i386/indirect-thunk-bnd-4.c         |  19 +
 .../gcc.target/i386/indirect-thunk-extern-1.c      |  19 +
 .../gcc.target/i386/indirect-thunk-extern-2.c      |  19 +
 .../gcc.target/i386/indirect-thunk-extern-3.c      |  20 +
 .../gcc.target/i386/indirect-thunk-extern-4.c      |  20 +
 .../gcc.target/i386/indirect-thunk-extern-5.c      |  16 +
 .../gcc.target/i386/indirect-thunk-extern-6.c      |  17 +
 .../gcc.target/i386/indirect-thunk-extern-7.c      |  43 ++
 .../gcc.target/i386/indirect-thunk-inline-1.c      |  18 +
 .../gcc.target/i386/indirect-thunk-inline-2.c      |  18 +
 .../gcc.target/i386/indirect-thunk-inline-3.c      |  19 +
 .../gcc.target/i386/indirect-thunk-inline-4.c      |  19 +
 .../gcc.target/i386/indirect-thunk-inline-5.c      |  15 +
 .../gcc.target/i386/indirect-thunk-inline-6.c      |  16 +
 .../gcc.target/i386/indirect-thunk-inline-7.c      |  42 ++
 .../gcc.target/i386/indirect-thunk-register-1.c    |  22 +
 .../gcc.target/i386/indirect-thunk-register-2.c    |  20 +
 .../gcc.target/i386/indirect-thunk-register-3.c    |  19 +
 .../gcc.target/i386/indirect-thunk-register-4.c    |  13 +
 gcc/testsuite/gcc.target/i386/ret-thunk-1.c        |  12 +
 gcc/testsuite/gcc.target/i386/ret-thunk-10.c       |  22 +
 gcc/testsuite/gcc.target/i386/ret-thunk-11.c       |  22 +
 gcc/testsuite/gcc.target/i386/ret-thunk-12.c       |  21 +
 gcc/testsuite/gcc.target/i386/ret-thunk-13.c       |  21 +
 gcc/testsuite/gcc.target/i386/ret-thunk-14.c       |  21 +
 gcc/testsuite/gcc.target/i386/ret-thunk-15.c       |  21 +
 gcc/testsuite/gcc.target/i386/ret-thunk-16.c       |  18 +
 gcc/testsuite/gcc.target/i386/ret-thunk-17.c       |   7 +
 gcc/testsuite/gcc.target/i386/ret-thunk-18.c       |   8 +
 gcc/testsuite/gcc.target/i386/ret-thunk-19.c       |   8 +
 gcc/testsuite/gcc.target/i386/ret-thunk-2.c        |  12 +
 gcc/testsuite/gcc.target/i386/ret-thunk-20.c       |   9 +
 gcc/testsuite/gcc.target/i386/ret-thunk-21.c       |   9 +
 gcc/testsuite/gcc.target/i386/ret-thunk-3.c        |  12 +
 gcc/testsuite/gcc.target/i386/ret-thunk-4.c        |  12 +
 gcc/testsuite/gcc.target/i386/ret-thunk-5.c        |  14 +
 gcc/testsuite/gcc.target/i386/ret-thunk-6.c        |  13 +
 gcc/testsuite/gcc.target/i386/ret-thunk-7.c        |  13 +
 gcc/testsuite/gcc.target/i386/ret-thunk-8.c        |  14 +
 gcc/testsuite/gcc.target/i386/ret-thunk-9.c        |  23 +
 74 files changed, 2166 insertions(+), 50 deletions(-)
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-1.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-10.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-2.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-3.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-4.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-5.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-6.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-7.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-8.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-9.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-1.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-10.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-11.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-2.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-3.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-4.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-5.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-6.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-7.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-8.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-9.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-1.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-2.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-3.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-4.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-1.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-2.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-3.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-4.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-5.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-6.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-7.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-1.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-2.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-3.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-4.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-5.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-6.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-7.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-register-1.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-register-2.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-register-3.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-register-4.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-1.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-10.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-11.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-12.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-13.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-14.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-15.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-16.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-17.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-18.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-19.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-2.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-20.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-21.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-3.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-4.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-5.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-6.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-7.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-8.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-9.c

-- 
2.14.3

^ permalink raw reply	[flat|nested] 120+ messages in thread
* Re: [PATCH 0/5] x86: CVE-2017-5715, aka Spectre
@ 2018-01-14 15:11 H.J. Lu
  2018-01-15  8:41 ` Richard Biener
  0 siblings, 1 reply; 120+ messages in thread
From: H.J. Lu @ 2018-01-14 15:11 UTC (permalink / raw)
  To: Jan Hubicka; +Cc: gcc-patches, Uros Bizjak (ubizjak@gmail.com)

Now my patch set has been checked into trunk.  Here is a patch set
to move struct ix86_frame to machine_function on GCC 7, which is
needed to backport the patch set to GCC 7:

https://gcc.gnu.org/ml/gcc-patches/2018-01/msg01239.html
https://gcc.gnu.org/ml/gcc-patches/2018-01/msg01240.html
https://gcc.gnu.org/ml/gcc-patches/2018-01/msg01241.html

OK for gcc-7-branch?

Thanks.


-- 
H.J.

^ permalink raw reply	[flat|nested] 120+ messages in thread
* [PATCH 0/5] x86: CVE-2017-5715, aka Spectre
@ 2018-01-07 22:59 H.J. Lu
  2018-01-07 23:36 ` Jeff Law
                   ` (2 more replies)
  0 siblings, 3 replies; 120+ messages in thread
From: H.J. Lu @ 2018-01-07 22:59 UTC (permalink / raw)
  To: gcc-patches

This set of patches for GCC 8 mitigates variant #2 of the speculative execution
vulnerabilities on x86 processors identified by CVE-2017-5715, aka Spectre.  They
convert indirect branches to call and return thunks to avoid speculative execution
via indirect call and jmp.


H.J. Lu (5):
  x86: Add -mindirect-branch=
  x86: Add -mindirect-branch-loop=
  x86: Add -mfunction-return=
  x86: Add -mindirect-branch-register
  x86: Add 'V' register operand modifier

 gcc/config/i386/constraints.md                     |  12 +-
 gcc/config/i386/i386-opts.h                        |  14 +
 gcc/config/i386/i386-protos.h                      |   2 +
 gcc/config/i386/i386.c                             | 655 ++++++++++++++++++++-
 gcc/config/i386/i386.h                             |  10 +
 gcc/config/i386/i386.md                            |  51 +-
 gcc/config/i386/i386.opt                           |  45 ++
 gcc/config/i386/predicates.md                      |  21 +-
 gcc/doc/extend.texi                                |  22 +
 gcc/doc/invoke.texi                                |  37 +-
 gcc/testsuite/gcc.target/i386/indirect-thunk-1.c   |  19 +
 gcc/testsuite/gcc.target/i386/indirect-thunk-2.c   |  19 +
 gcc/testsuite/gcc.target/i386/indirect-thunk-3.c   |  20 +
 gcc/testsuite/gcc.target/i386/indirect-thunk-4.c   |  20 +
 gcc/testsuite/gcc.target/i386/indirect-thunk-5.c   |  16 +
 gcc/testsuite/gcc.target/i386/indirect-thunk-6.c   |  17 +
 gcc/testsuite/gcc.target/i386/indirect-thunk-7.c   |  43 ++
 .../gcc.target/i386/indirect-thunk-attr-1.c        |  22 +
 .../gcc.target/i386/indirect-thunk-attr-2.c        |  20 +
 .../gcc.target/i386/indirect-thunk-attr-3.c        |  21 +
 .../gcc.target/i386/indirect-thunk-attr-4.c        |  20 +
 .../gcc.target/i386/indirect-thunk-attr-5.c        |  22 +
 .../gcc.target/i386/indirect-thunk-attr-6.c        |  21 +
 .../gcc.target/i386/indirect-thunk-attr-7.c        |  44 ++
 .../gcc.target/i386/indirect-thunk-attr-8.c        |  41 ++
 .../gcc.target/i386/indirect-thunk-bnd-1.c         |  19 +
 .../gcc.target/i386/indirect-thunk-bnd-2.c         |  20 +
 .../gcc.target/i386/indirect-thunk-bnd-3.c         |  18 +
 .../gcc.target/i386/indirect-thunk-bnd-4.c         |  19 +
 .../gcc.target/i386/indirect-thunk-extern-1.c      |  19 +
 .../gcc.target/i386/indirect-thunk-extern-2.c      |  19 +
 .../gcc.target/i386/indirect-thunk-extern-3.c      |  20 +
 .../gcc.target/i386/indirect-thunk-extern-4.c      |  20 +
 .../gcc.target/i386/indirect-thunk-extern-5.c      |  16 +
 .../gcc.target/i386/indirect-thunk-extern-6.c      |  17 +
 .../gcc.target/i386/indirect-thunk-extern-7.c      |  43 ++
 .../gcc.target/i386/indirect-thunk-inline-1.c      |  18 +
 .../gcc.target/i386/indirect-thunk-inline-2.c      |  18 +
 .../gcc.target/i386/indirect-thunk-inline-3.c      |  19 +
 .../gcc.target/i386/indirect-thunk-inline-4.c      |  19 +
 .../gcc.target/i386/indirect-thunk-inline-5.c      |  15 +
 .../gcc.target/i386/indirect-thunk-inline-6.c      |  16 +
 .../gcc.target/i386/indirect-thunk-inline-7.c      |  42 ++
 .../gcc.target/i386/indirect-thunk-loop-1.c        |  19 +
 .../gcc.target/i386/indirect-thunk-loop-2.c        |  19 +
 .../gcc.target/i386/indirect-thunk-loop-3.c        |  19 +
 .../gcc.target/i386/indirect-thunk-loop-4.c        |  19 +
 .../gcc.target/i386/indirect-thunk-loop-5.c        |  19 +
 .../gcc.target/i386/indirect-thunk-register-1.c    |  22 +
 .../gcc.target/i386/indirect-thunk-register-2.c    |  20 +
 .../gcc.target/i386/indirect-thunk-register-3.c    |  19 +
 .../gcc.target/i386/indirect-thunk-register-4.c    |  13 +
 gcc/testsuite/gcc.target/i386/ret-thunk-1.c        |  12 +
 gcc/testsuite/gcc.target/i386/ret-thunk-10.c       |  22 +
 gcc/testsuite/gcc.target/i386/ret-thunk-11.c       |  22 +
 gcc/testsuite/gcc.target/i386/ret-thunk-12.c       |  21 +
 gcc/testsuite/gcc.target/i386/ret-thunk-13.c       |  21 +
 gcc/testsuite/gcc.target/i386/ret-thunk-14.c       |  21 +
 gcc/testsuite/gcc.target/i386/ret-thunk-15.c       |  21 +
 gcc/testsuite/gcc.target/i386/ret-thunk-16.c       |  18 +
 gcc/testsuite/gcc.target/i386/ret-thunk-2.c        |  12 +
 gcc/testsuite/gcc.target/i386/ret-thunk-3.c        |  12 +
 gcc/testsuite/gcc.target/i386/ret-thunk-4.c        |  12 +
 gcc/testsuite/gcc.target/i386/ret-thunk-5.c        |  14 +
 gcc/testsuite/gcc.target/i386/ret-thunk-6.c        |  13 +
 gcc/testsuite/gcc.target/i386/ret-thunk-7.c        |  13 +
 gcc/testsuite/gcc.target/i386/ret-thunk-8.c        |  14 +
 gcc/testsuite/gcc.target/i386/ret-thunk-9.c        |  23 +
 68 files changed, 2004 insertions(+), 47 deletions(-)
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-1.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-2.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-3.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-4.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-5.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-6.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-7.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-1.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-2.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-3.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-4.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-5.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-6.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-7.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-attr-8.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-1.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-2.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-3.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-bnd-4.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-1.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-2.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-3.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-4.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-5.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-6.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-extern-7.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-1.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-2.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-3.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-4.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-5.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-6.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-inline-7.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-loop-1.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-loop-2.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-loop-3.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-loop-4.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-loop-5.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-register-1.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-register-2.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-register-3.c
 create mode 100644 gcc/testsuite/gcc.target/i386/indirect-thunk-register-4.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-1.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-10.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-11.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-12.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-13.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-14.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-15.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-16.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-2.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-3.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-4.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-5.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-6.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-7.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-8.c
 create mode 100644 gcc/testsuite/gcc.target/i386/ret-thunk-9.c

-- 
2.14.3

^ permalink raw reply	[flat|nested] 120+ messages in thread

end of thread, other threads:[~2018-01-18  8:12 UTC | newest]

Thread overview: 120+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-01-14  3:37 [PATCH 0/5] x86: CVE-2017-5715, aka Spectre H.J. Lu
2018-01-14  3:37 ` [PATCH 5/5] x86: Disallow -mindirect-branch=/-mfunction-return= with -mcmodel=large H.J. Lu
2018-01-14 10:49   ` Jan Hubicka
2018-01-14 14:20     ` H.J. Lu
2018-01-14 16:08       ` H.J. Lu
2018-01-14  3:37 ` [PATCH 2/5] x86: Add -mfunction-return= H.J. Lu
2018-01-14 10:51   ` Jan Hubicka
2018-01-14 11:33     ` H.J. Lu
2018-01-14 12:57       ` H.J. Lu
2018-01-14 15:12         ` H.J. Lu
2018-01-14  3:37 ` [PATCH 1/5] x86: Add -mindirect-branch= H.J. Lu
2018-01-14 10:46   ` Jan Hubicka
2018-01-14 11:06     ` Markus Trippelsdorf
2018-01-14 11:21       ` Jan Hubicka
2018-01-14 12:53         ` H.J. Lu
2018-01-14 15:11           ` H.J. Lu
2018-01-14 20:21         ` David Woodhouse
2018-01-14  3:37 ` [PATCH 3/5] x86: Add -mindirect-branch-register H.J. Lu
2018-01-14 10:47   ` Jan Hubicka
2018-01-14 15:13     ` H.J. Lu
2018-01-14  3:40 ` [PATCH 4/5] x86: Add 'V' register operand modifier H.J. Lu
2018-01-14 10:47   ` Jan Hubicka
2018-01-14 15:14     ` H.J. Lu
2018-01-14  8:48 ` [PATCH 0/5] x86: CVE-2017-5715, aka Spectre Kumar, Venkataramanan
2018-01-14 10:45   ` Jan Hubicka
2018-01-14 12:33     ` Uros Bizjak
2018-01-14 12:52       ` Jan Hubicka
2018-01-14 12:55         ` H.J. Lu
2018-01-14 14:22     ` Jan Hubicka
2018-01-14 14:30       ` H.J. Lu
2018-01-15  6:02         ` Kumar, Venkataramanan
  -- strict thread matches above, loose matches on Subject: below --
2018-01-14 15:11 H.J. Lu
2018-01-15  8:41 ` Richard Biener
2018-01-15 12:41   ` H.J. Lu
2018-01-15 16:54     ` H.J. Lu
2018-01-16  8:20       ` Richard Biener
2018-01-16  8:36         ` Jan Hubicka
2018-01-16  9:48           ` Richard Biener
2018-01-16 10:05             ` Jan Hubicka
2018-01-16 15:03             ` Rainer Orth
2018-01-16 11:07           ` H.J. Lu
2018-01-16 15:01           ` Rainer Orth
2018-01-16 14:58         ` Rainer Orth
2018-01-07 22:59 H.J. Lu
2018-01-07 23:36 ` Jeff Law
2018-01-08  0:30   ` H.J. Lu
2018-01-08 10:01     ` Martin Liška
2018-01-09 18:55       ` Jeff Law
2018-01-09 18:54     ` Jeff Law
2018-01-09 19:26       ` H.J. Lu
2018-01-10 10:44       ` Eric Botcazou
2018-01-10 12:53         ` H.J. Lu
2018-01-10 13:12         ` Richard Biener
2018-01-10 13:35           ` Jakub Jelinek
2018-01-10 13:55             ` H.J. Lu
2018-01-11 10:16               ` Richard Biener
2018-01-11  1:30             ` Jeff Law
2018-01-11 10:16               ` Richard Biener
2018-01-11 13:41                 ` H.J. Lu
2018-01-12  8:07                   ` Uros Bizjak
2018-01-12 13:31                     ` H.J. Lu
2018-01-12 15:09                       ` Jan Hubicka
2018-01-12 15:30                         ` H.J. Lu
2018-01-14 16:21                     ` Uros Bizjak
2018-01-14 16:39                       ` H.J. Lu
2018-01-14 16:41                         ` Uros Bizjak
2018-01-14 16:43                           ` H.J. Lu
2018-01-14 16:48                             ` Jakub Jelinek
2018-01-14 17:17                               ` H.J. Lu
2018-01-14 17:51                                 ` Woodhouse, David
2018-01-14 18:52                                   ` Uros Bizjak
2018-01-14 20:35                                     ` Uros Bizjak
2018-01-14 20:44                                       ` David Woodhouse
2018-01-14 21:03                                         ` Uros Bizjak
2018-01-14 21:07                                           ` David Woodhouse
2018-01-14 21:09                                             ` Linus Torvalds
2018-01-14 21:16                                               ` David Woodhouse
2018-01-14 21:23                                                 ` Thomas Gleixner
2018-01-14 21:49                                               ` H.J. Lu
2018-01-14 22:03                                               ` David Woodhouse
2018-01-14 22:09                                                 ` H.J. Lu
2018-01-14 22:12                                                   ` David Woodhouse
2018-01-14 22:39                                                     ` H.J. Lu
2018-01-14 23:02                                                       ` David Woodhouse
2018-01-14 23:09                                                         ` Linus Torvalds
2018-01-14 23:21                                                           ` David Woodhouse
2018-01-14 23:23                                                             ` Linus Torvalds
2018-01-15  8:21                                           ` David Woodhouse
2018-01-17 18:34                                     ` Woodhouse, David
2018-01-18  8:02                                       ` Uros Bizjak
2018-01-18  8:18                                         ` Woodhouse, David
2018-01-14 16:58                             ` Uros Bizjak
2018-01-14 16:58                               ` H.J. Lu
2018-01-14 16:45                         ` Uros Bizjak
2018-01-16 19:57                           ` Uros Bizjak
2018-01-11 20:32                 ` Jeff Law
2018-01-11 23:45                   ` Joseph Myers
2018-01-12  0:46                     ` Jeff Law
2018-01-08 14:36   ` Alan Modra
2018-01-08 15:04     ` H.J. Lu
2018-01-08 15:07       ` Jakub Jelinek
2018-01-08 16:19         ` H.J. Lu
2018-01-08 16:32           ` Jakub Jelinek
2018-01-08 17:14         ` Michael Matz
2018-01-11  0:19     ` Jeff Law
2018-01-11 10:05       ` Alan Modra
2018-01-11 20:30         ` Jeff Law
2018-01-08 21:00   ` David Woodhouse
2018-01-11 21:19     ` Florian Weimer
2018-01-11 21:42       ` David Woodhouse
2018-01-13 12:17         ` Florian Weimer
2018-01-13 13:00           ` David Woodhouse
2018-01-08  4:22 ` Sandra Loosemore
2018-01-08  8:00   ` Markus Trippelsdorf
2018-01-08 11:40     ` H.J. Lu
2018-01-08 11:40   ` H.J. Lu
2018-01-11 13:28     ` H.J. Lu
2018-01-08 17:40   ` Florian Weimer
2018-01-08 17:33 ` Florian Weimer
2018-01-08 20:49   ` David Woodhouse

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).