From: Alexei Starovoitov <alexei.starovoi...@gmail.com> Date: Mon, 9 Oct 2017 16:06:20 -0700
>> For these archs, wouldn't it then be more efficient to use BUG_ON >> rather than BUG()? > > why more efficient? any data to prove that? It can completely eliminate a branch. For example on powerpc if you use BUG() then the code generated is: test condition branch_not_true 1f unconditional_trap 1: Whereas with BUG_ON() it's just: test condition trap_if_true Which is a lot better even when the branches in the first case are well predicted.