On Fri, 28 Oct 2011, Cedric BAIL wrote:

> On Fri, Oct 28, 2011 at 2:13 PM, Youness Alaoui
> <[email protected]> wrote:
>> I agree with vincent, and I think that there shouldn't be a "define it
>> before including eina.h" implicit rule.. while it's not so bad, and it would
>> work, it's not the right way to do it.
>> these functions shouldn't be inlined I think, they should be a define, and
>
> Using define instead of inline has a lot issue. First it doesn't let
> the compiler when it's better or not to inline, it will always inline.
> Second it doesn't do any type checking so you can break stuff much
> more easily. And generally inline is much more easy to read than
> define.
>
>> for the posix functions, they are way too big to be inline, they would
>> dramatically increase the generated code, especially if you lock/unlock
>> everywhere.
>
> I actually don't understand what point your are trying to make here.
>
>> As for performance, give us hard numbers! I don't think it would
>> affect performance for such function calls. So in my opinion, make them
>> defines, and have the posix versions as actual functions that the defines
>> call (so for non posix with smaller functions, you don't need an actual
>> call).
>
> What does matter is call to small function, because the overhead of
> setting up the stack, saving register, jumping to the actual function
> to call and then coming by restoring register and the stack does
> introduce a cost. Something you will not see on your high end laptop,
> but on embedded device. And the inline function are function that are
> typically in the hot path of our stack, so function call really do
> matter. And moving to #define would not solve the issue Vincent is
> pointing as far as I understand it.

indeed. So, with the argument of Jorge, there are 2 problems.

Vincent

------------------------------------------------------------------------------
The demand for IT networking professionals continues to grow, and the
demand for specialized networking skills is growing even more rapidly.
Take a complimentary Learning@Cisco Self-Assessment and learn 
about Cisco certifications, training, and career opportunities. 
http://p.sf.net/sfu/cisco-dev2dev
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to