Home | History | Annotate | Download | only in aarch64

Lines Matching defs:tracker

62 	CSEL	tracker, tracker, XZr, ne
65 CSEL tracker, tracker, XZr, eq
67 Since we start with the tracker initialized to all bits one, if at any
69 behavior, then the tracker will become zero (but not otherwise).
71 The tracker value can be used at any time at which a value needs
75 can simply mask the address with the tracker with the untrusted
78 to zero. For more complex scenarios we can compare the tracker
85 time we use the tracker for protecting a vulnerable value we also
86 emit a CSDB: we do not need to do that each time the tracker itself
95 SP by clearing SP if the speculation tracker itself is NULL. After
97 tracker register. The results is that a function call sequence is
101 AND tmp, tmp, tracker
105 CSETM tracker, ne
111 prologue to establish the tracker and the pre-call sequence in the
116 will always be non-NULL and hence the tracker will be initialized to all
125 the tracker) do not need to establish a new tracker: they simply
130 need to re-establish the tracker between the calls. Again, we can
132 tracker value is needed at that point in time.
145 rtx tracker = gen_rtx_REG (DImode, SPECULATION_TRACKER_REGNUM);
150 emit_insn (gen_anddi3 (scratch, scratch, tracker));
157 /* Generate a code sequence to establish the tracker variable from the
163 rtx tracker = gen_rtx_REG (DImode, SPECULATION_TRACKER_REGNUM);
166 emit_insn (gen_cstoredi_neg (tracker,
293 restore the speculation tracking into the tracker register.
307 tracking to be in the tracker register. If there
325 transfer between the tracker register and SP if we
345 reestablishment of the tracker. */
438 /* Set up the initial value of the tracker, using the incoming SP. */