From 0a899af097a987f02c223a7f1fb2348d5bfea76c Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Wed, 18 Jul 2018 07:59:54 -0700 Subject: i386: Use _CET_NOTRACK in memcpy-ssse3-rep.S * sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S (BRANCH_TO_JMPTBL_ENTRY): Add _CET_NOTRACK before indirect jump to jump table. (BRANCH_TO_JMPTBL_ENTRY_TAIL): Likewise. --- ChangeLog | 7 +++++++ sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S | 8 ++++---- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5c2dd10248..dd82ae8ae3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2018-07-18 H.J. Lu + + * sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S + (BRANCH_TO_JMPTBL_ENTRY): Add _CET_NOTRACK before indirect jump + to jump table. + (BRANCH_TO_JMPTBL_ENTRY_TAIL): Likewise. + 2018-07-18 H.J. Lu * sysdeps/i386/i686/multiarch/memcmp-sse4.S diff --git a/sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S b/sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S index 287f1df8ca..129310bd8a 100644 --- a/sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S +++ b/sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S @@ -71,7 +71,7 @@ absolute address. */ \ addl (%ebx,INDEX,SCALE), %ebx; \ /* We loaded the jump table. Go. */ \ - jmp *%ebx + _CET_NOTRACK jmp *%ebx # define BRANCH_TO_JMPTBL_ENTRY_VALUE(TABLE) \ addl $(TABLE - .), %ebx @@ -79,7 +79,7 @@ # define BRANCH_TO_JMPTBL_ENTRY_TAIL(TABLE, INDEX, SCALE) \ addl (%ebx,INDEX,SCALE), %ebx; \ /* We loaded the jump table. Go. */ \ - jmp *%ebx + _CET_NOTRACK jmp *%ebx #else # define PARMS 4 # define ENTRANCE @@ -91,12 +91,12 @@ absolute offsets. INDEX is a register contains the index into the jump table. SCALE is the scale of INDEX. */ # define BRANCH_TO_JMPTBL_ENTRY(TABLE, INDEX, SCALE) \ - jmp *TABLE(,INDEX,SCALE) + _CET_NOTRACK jmp *TABLE(,INDEX,SCALE) # define BRANCH_TO_JMPTBL_ENTRY_VALUE(TABLE) # define BRANCH_TO_JMPTBL_ENTRY_TAIL(TABLE, INDEX, SCALE) \ - jmp *TABLE(,INDEX,SCALE) + _CET_NOTRACK jmp *TABLE(,INDEX,SCALE) #endif .section .text.ssse3,"ax",@progbits -- cgit 1.4.1