On 02/12/2011 05:27 PM, Jonathan M Davis wrote:
Aside from enforce, this function is a one-liner. It's obvious that it should be
inlined and that it _would_ be inlined if enforce isn't used. But if I were to
use enforce, it couldn't be inlined. It's situations like that which really
bother me. enforce is definitely and obviously harming code efficiency in such a
case.

Hello again Jonathan,

Maybe a good use case of what I asked for in another thread: feedback from the compiler about whather a given func is inlinable. Imagine I don't know enforce is problematic. After all, at first sight, I can see no obvious reason (maybe from lack of knowledge). Then, how can one know? Could happily let it externalisable persuaded it would /for sure/ be inlined. In your case, tough, I think it's not problematic since there are few chances for the func to represent a significant proportion of run time (I guess ;-). In my case, it a func called by a parser's Node constructor! Typically a major part of a parser's runtime is, precisely, generating millions on Nodes every second...

Denis
--
_________________
vita es estrany
spir.wikidot.com

Reply via email to