Messages in this thread | | | Date | Tue, 24 Aug 2021 23:05:07 +0200 | From | Peter Zijlstra <> | Subject | Re: objtool warning in cfg80211_edmg_chandef_valid() with ThinLTO |
| |
On Tue, Aug 24, 2021 at 01:08:58PM -0700, Nathan Chancellor wrote:
> The LLVM developers are under the impression that this is an issue with > objtool; specifically quoting Eli Friedman: > > "The backend can, in general, create basic blocks that don't contain any > instructions, and don't fall through to another block. A jump table entry > can refer to such a block. I guess certain tools could be confused by this. > > If that's the issue, it should be possible to work around it using '-mllvm > -trap-unreachable'."
So jump-tables are a weak point; ARM64 was having worse problems than x86 there, they can't even locate them.
As to having a jump-table entry to an empty block and not falling through; how are we supposed to know? Emitting them is a waste of space, so I'd say it's a compiler bug :-))
It's been brought up before; but perhaps we should look at an 'informal' ABI for jump-tables ?
| |