diff options
author | bernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-11-18 12:26:43 +0000 |
---|---|---|
committer | bernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-11-18 12:26:43 +0000 |
commit | 19f3f4dc085e6ae2a26d5f24b3a60d2a3e3fd5a3 (patch) | |
tree | cecf7a6e31ae97795e1eef1f83c8bb4b39867e0e /gcc/regrename.c | |
parent | d120cb123185c9f96bcb9e0e7f0c950424322a28 (diff) | |
download | gcc-19f3f4dc085e6ae2a26d5f24b3a60d2a3e3fd5a3.tar.gz |
* regrename.h (struct du_head): Add target_data_1 and target_data_2
fields.
* regrename.c (create_new_chain): Clear entire struct after allocating.
* config/i386/i386.opt (mmitigate-rop): New option.
* doc/invoke.texi (mmitigate-rop): Document.
* config/i386/i386.c: Include "regrename.h".
(ix86_rop_should_change_byte_p, reg_encoded_number,
ix86_get_modrm_for_rop, set_rop_modrm_reg_bits, ix86_mitigate_rop): New
static functions.
(ix86_reorg): Call ix86_mitigate_rop if -fmitigate-rop.
* config/i386/i386.md (attr "modrm_class"): New.
(cmp<mode>_ccno_1, mov<mode>_xor, movstrict<mode>_xor,
x86_mov<mode>cc_0_m1. x86_mov<mode>cc_0_m1_se)
(x86_mov<mode>cc_0_m1_neg): Override modrm_class attribute.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230543 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/regrename.c')
-rw-r--r-- | gcc/regrename.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/gcc/regrename.c b/gcc/regrename.c index 1f11695c5db..e2a1e83c7ea 100644 --- a/gcc/regrename.c +++ b/gcc/regrename.c @@ -227,13 +227,10 @@ create_new_chain (unsigned this_regno, unsigned this_nregs, rtx *loc, struct du_chain *this_du; int nregs; + memset (head, 0, sizeof *head); head->next_chain = open_chains; head->regno = this_regno; head->nregs = this_nregs; - head->need_caller_save_reg = 0; - head->cannot_rename = 0; - head->renamed = 0; - head->tied_chain = NULL; id_to_chain.safe_push (head); head->id = current_id++; |