On Monday 19 December 2011 12:45:30 Joseph S. Myers wrote: > On Mon, 12 Dec 2011, Mike Frysinger wrote: > > + /* Support relocations on mis-aligned offsets. */ > > + memcpy (&reloc_value, reloc_addr_arg, sizeof (reloc_value)); > > + reloc_value += value; > > + memcpy (reloc_addr_arg, &reloc_value, sizeof (reloc_value)); > > It seems from the discussion that it would be useful to see exactly what > code ends up getting generated for these memcpy calls. Is it a function > call or inlined? What about all the other memcpy calls in the dynamic > linker? For calls to memcpy that really are function calls, do they end > up going through the PLT, or do they end up as direct calls to the copy of > memcpy in the dynamic linker (given that it's linked with a version script > that hides memcpy along with all the other libc functions it uses, so it > shouldn't be necessary for calls to go through the PLT)? i was in the process of implementing Richard's suggestion for using a struct and gcc attributes. but i'm hitting unrelated arm build failures which i'm trying to resolve before moving on ... -mike