Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » Community » U++ community news and announcements » String::Cat optimization
String::Cat optimization [message #34575] Wed, 30 November 2011 17:58 Go to previous message
mirek is currently offline  mirek
Messages: 13976
Registered: November 2005
Ultimate Member
By replacing memcpy with

inline void svo_memcpy(char *t, const char *s, int len)
{
	switch(len) {
	case 15: t[14] = s[14];
	case 14: t[13] = s[13];
	case 13: t[12] = s[12];
	case 12: t[11] = s[11];
	case 11: t[10] = s[10];
	case 10: t[9] = s[9];
	case  9: t[8] = s[8];
	case  8: t[7] = s[7];
	case  7: t[6] = s[6];
	case  6: t[5] = s[5];
	case  5: t[4] = s[4];
	case  4: t[3] = s[3];
	case  3: t[2] = s[2];
	case  2: t[1] = s[1];
	case  1: t[0] = s[0];
		return;
	}
	memcpy(t, s, len);
}


I have recieved about 10% improvemenced in the String::Cat for small values.
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Please update sources
Next Topic: New GDB frontend for Theide
Goto Forum:
  


Current Time: Sat May 11 14:45:42 CEST 2024

Total time taken to generate the page: 0.03545 seconds