mrutland-arm wrote: I've given this a test, building a v6.15 defconfig arm64 Linux kernel with LLVM built with and without this change, and the reduction is impressive:
| | before | after | change | | - | - | - | - | | `BTI J` instructions | 23,323 | 4,207 | -19,116 (-82%) | | .text size (bytes) | 20,418,121 | 20,343,417 | -74,704 (-0.37%) | | Image size (bytes) | 39,195,136 | 39,129,600 | -65,536 (-0.17%) | | vmlinux size (bytes) | 411,181,384 | 409,784,800 | -1,396,584 (-0.34%) | I've also given that kernel a basic boot test on a model with BTI support, and all looks well so far. I do not current have BTI-capable hardware, so I'm not able to get performance figures. Regardless, I think this is pretty clearly a win. https://github.com/llvm/llvm-project/pull/141562 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits