Re: [cc65] inlining details

From: Groepaz <groepaz1gmx.net>
Date: 2012-02-22 04:20:37
On Tuesday 21 February 2012, Ullrich von Bassewitz wrote:

> I don't know if this is a good idea. Your code shouldn't depend on inlining
> standard functions. If you replace the standard functions with your own,
> but don't change the semantics, nothing bad should happen. If you change
> the semantics, then you should probably give them another name.

its not that... i must be very careful with respect to code size, and there 
are mostly string functions in the areas which i'd like to be a bit faster. i 
could probably achive what i want by ripping apart the code into several files 
(and compile them with different options), but even then i would likely have 
functions that use memset for init stuff (no need to inline) and some string 
stuff in a loop later. or something :) i actually try to keep the semantics of 
standard functions everywhere, and also use them instead of writing duplicated 
code - and thats exactly what gets in the way here unfortunately.... giving 
memset another name just to have it not inlined seems ugly (and so does 
ripping apart the code) :)

so well, i realize that what i want to do is a bit uncommon :) however i think 
for such a memory constrained system having a pragma to control this on a per 
function basis would be very nice, it would be a much less ugly solution in my 
case at least :)

anyway, gotta test what -Oi does to my code first i guess =P thanks for the 
details (some of what you said could perhaps be added to the docs :))

-- 

http://www.hitmen-console.org    http://magicdisk.untergrund.net
http://www.pokefinder.org        http://ftp.pokefinder.org

A man without religion is like a fish without a bicycle.

----------------------------------------------------------------------
To unsubscribe from the list send mail to majordomo@musoftware.de with
the string "unsubscribe cc65" in the body(!) of the mail.
Received on Wed Feb 22 04:20:41 2012

This archive was generated by hypermail 2.1.8 : 2012-02-22 04:20:46 CET