Re: [PATCH v1 RFC Zisslpcfi 7/9] target/riscv: Tracking indirect branches (fcfi) using TCG

2023-02-15 Thread Richard Henderson
On 2/8/23 20:24, Deepak Gupta wrote: +if (cpu->cfg.ext_cfi) { +/* + * For Forward CFI, only the expectation of a lpcll at + * the start of the block is tracked (which can only happen + * when FCFI is enabled for the current processor mode). A jump + * o

Re: [PATCH v1 RFC Zisslpcfi 7/9] target/riscv: Tracking indirect branches (fcfi) using TCG

2023-02-15 Thread Deepak Gupta
On Wed, Feb 15, 2023 at 6:44 PM LIU Zhiwei wrote: > > > On 2023/2/16 8:02, Deepak Gupta wrote: > > On Wed, Feb 15, 2023 at 12:55 AM LIU Zhiwei > > wrote: > >> > >> On 2023/2/9 14:24, Deepak Gupta wrote: > >>> zisslpcfi protects forward control flow (if enabled) by enforcing all > >>> indirect cal

Re: [PATCH v1 RFC Zisslpcfi 7/9] target/riscv: Tracking indirect branches (fcfi) using TCG

2023-02-15 Thread LIU Zhiwei
On 2023/2/16 8:02, Deepak Gupta wrote: On Wed, Feb 15, 2023 at 12:55 AM LIU Zhiwei wrote: On 2023/2/9 14:24, Deepak Gupta wrote: zisslpcfi protects forward control flow (if enabled) by enforcing all indirect call and jmp must land on a landing pad instruction `lpcll` short for landing pad a

Re: [PATCH v1 RFC Zisslpcfi 7/9] target/riscv: Tracking indirect branches (fcfi) using TCG

2023-02-15 Thread Deepak Gupta
On Wed, Feb 15, 2023 at 12:55 AM LIU Zhiwei wrote: > > > On 2023/2/9 14:24, Deepak Gupta wrote: > > zisslpcfi protects forward control flow (if enabled) by enforcing all > > indirect call and jmp must land on a landing pad instruction `lpcll` > > short for landing pad and check lower label value.

Re: [PATCH v1 RFC Zisslpcfi 7/9] target/riscv: Tracking indirect branches (fcfi) using TCG

2023-02-15 Thread LIU Zhiwei
On 2023/2/9 14:24, Deepak Gupta wrote: zisslpcfi protects forward control flow (if enabled) by enforcing all indirect call and jmp must land on a landing pad instruction `lpcll` short for landing pad and check lower label value. If target of an indirect call or jmp is not `lpcll` then cpu/hart

[PATCH v1 RFC Zisslpcfi 7/9] target/riscv: Tracking indirect branches (fcfi) using TCG

2023-02-08 Thread Deepak Gupta
zisslpcfi protects forward control flow (if enabled) by enforcing all indirect call and jmp must land on a landing pad instruction `lpcll` short for landing pad and check lower label value. If target of an indirect call or jmp is not `lpcll` then cpu/hart must raise an illegal instruction exception

[PATCH v1 RFC Zisslpcfi 7/9] target/riscv: Tracking indirect branches (fcfi) using TCG

2023-02-08 Thread Deepak Gupta
zisslpcfi protects forward control flow (if enabled) by enforcing all indirect call and jmp must land on a landing pad instruction `lpcll` short for landing pad and check lower label value. If target of an indirect call or jmp is not `lpcll` then cpu/hart must raise an illegal instruction exception