![]() | |||||||||||||
Messages in this thread |
>>>>> "Aaron" == Aaron Lehmann <aaronl@vitelus.com> writes: Aaron> On Wed, Jan 02, 2002 at 01:03:25AM +0200, Momchil Velikov wrote: >> Thus >> strcpy (dst, "abcdef" + 2) >> gives >> memcpy (dst, "abcdef" + 2, 5) Aaron> IMHO gcc should not be touching these function calls, as they are not Aaron> made to a standard C library, and thus have different behaviors. I'm Aaron> suprised that gcc tries to optimize calls to these functions just Aaron> based on their names. IIRC, these identifiers are reserved by the C standard, thus the compiler is right to assume that they have standard behavior. And note that they DO have the standard behavior. It even doesn't matter if GCC is right to judge by the names in each and every case, it is right in _this_ case. Aaron> The gcc manpage mentions Aaron> -ffreestanding Aaron> Assert that compilation takes place in a freestanding Aaron> environment. This implies -fno-builtin. A freestand Aaron> ing environment is one in which the standard library Aaron> may not exist, and program startup may not necessarily Aaron> be at "main". The most obvious example is an OS ker Aaron> nel. This is equivalent to -fno-hosted. Aaron> Why is Linux not using this? It sounds very appropriate. The only Because it results in less optimization. I see no point in deliberately preventing the compiler from doing optimizations. Regards, -velco - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ | ||||||||||||
| Last update: 2005-03-22 12:15 [W:1.521 / U:0.110 seconds] ©2003-2008 Jasper Spaans | |||||||||||||