aboutsummaryrefslogtreecommitdiff
path: root/src/thread/microblaze (follow)
Commit message (Expand)AuthorAgeFilesLines
* use explicit __cp_cancel label in cancellable syscall asm for all archs•••previously, only archs that needed to do stack cleanup defined a __cp_cancel label for acting on cancellation in their syscall asm, and a default definition was provided by a weak alias to __cancel, the C function. this resulted in wrong codegen for arm on gcc versions affected by pr 68178 and possibly similar issues (like pr 66609) on other archs, and also created an inconsistency where the __cp_begin and __cp_end labels were treated as const data but __cp_cancel was treated as a function. this in turn caused incorrect code generation on archs where function pointers point to function descriptors rather than code (for now, only sh/fdpic). Rich Felker2015-11-021-1/+3
* consistently use hidden visibility for cancellable syscall internals•••in a few places, non-hidden symbols were referenced from asm in ways that assumed ld-time binding. while these is no semantic reason these symbols need to be hidden, fixing the references without making them hidden was going to be ugly, and hidden reduces some bloat anyway. in the asm files, .global/.hidden directives have been moved to the top to unclutter the actual code. Rich Felker2015-04-141-3/+9
* clone: make clone a wrapper around __clone•••The architecture-specific assembly versions of clone did not set errno on failure, which is inconsistent with glibc. __clone still returns the error via its return value, and clone is now a wrapper that sets errno as needed. The public clone has also been moved to src/linux, as it's not directly related to the pthreads API. __clone is called by pthread_create, which does not report errors via errno. Though not strictly necessary, it's nice to avoid clobbering errno here. Bobby Bingham2014-02-091-4/+1
* fix order of syscall args for microblaze clone syscall•••with this commit, based on testing with patches to qemu which are not yet upstream, Rich Felker2012-10-191-3/+2
* ensure microblaze __set_thread_area returns success•••since it did not set the return-value register, the caller could wrongly interpret this as failure. Rich Felker2012-10-181-1/+2
* fix microblaze asm relocations for shared libc•••only @PLT relocations are considered functions for purposes of -Bsymbolic-functions, so always use @PLT. it should not hurt in the static-linked case. Rich Felker2012-10-171-1/+1
* microblaze port•••based on initial work by rdp, with heavy modifications. some features including threads are untested because qemu app-level emulation seems to be broken and I do not have a proper system image for testing. Rich Felker2012-09-294-0/+65