From "Lorenz (xha)" (me(at)xha.li): teach binutils how to assemble
authorguenther <guenther@openbsd.org>
Mon, 15 Jan 2024 06:57:07 +0000 (06:57 +0000)
committerguenther <guenther@openbsd.org>
Mon, 15 Jan 2024 06:57:07 +0000 (06:57 +0000)
endbr{64,32}

"sure" dv@ deraadt@

gnu/usr.bin/binutils-2.17/include/opcode/i386.h

index 7b31514..a8d4a43 100644 (file)
@@ -1534,6 +1534,10 @@ static const template i386_optab[] =
 {"invpcid", 2, 0x660f3882, X, CpuNEW|CpuNo64, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_sSuf|No_qSuf|No_xSuf|NoRex64, { BaseIndex|Disp8|Disp16|Disp32|Disp32S, Reg32 } },
 {"invpcid", 2, 0x660f3882, X, CpuNEW|Cpu64, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_sSuf|No_qSuf|No_xSuf|NoRex64, { BaseIndex|Disp8|Disp16|Disp32|Disp32S, Reg64 } },
 
+/* Intel Indirect Branch Tracking extensions */
+{"endbr64", 0, 0xF30F1E, 0xFA, Cpu64, NoSuf|ImmExt, { 0, 0, 0 } },
+{"endbr32", 0, 0xF30F1E, 0xFB, CpuNo64, NoSuf|ImmExt, { 0, 0, 0 } },
+
 /* sentinel */
 {NULL, 0, 0, 0, 0, 0, { 0, 0, 0} }
 };