about summary refs log tree commit diff
path: root/src/thread/i386/cancellation2.s
Commit message (Collapse)AuthorAgeFilesLines
* further debloat cancellation handlersRich Felker2011-08-031-24/+0
| | | | | | | cleanup push and pop are also no-ops if pthread_exit is not reachable. this can make a big difference for library code which needs to protect itself against cancellation, but which is unlikely to actually be used in programs with threads/cancellation.
* fix static linking dependency bloat with cancellationRich Felker2011-08-031-0/+8
| | | | | | | previously, pthread_cleanup_push/pop were pulling in all of pthread_create due to dependency on the __pthread_unwind_next function. this was not needed, as cancellation cleanup handlers can never be called unless pthread_exit or pthread_cancel is reachable.
* restore use of .type in asm, but use modern @function (vs %function)Rich Felker2011-06-141-0/+2
| | | | | | | | this seems to be necessary to make the linker accept the functions in a shared library (perhaps to generate PLT entries?) strictly speaking libc-internal asm should not need it. i might clean that up later.
* remove all .size and .type directives for functions from the asmRich Felker2011-06-131-2/+0
| | | | | these are useless and have caused problems for users trying to build with non-gnu tools like tcc's assembler.
* match glibc/lsb cancellation abi on i386Rich Felker2011-03-251-0/+16
glibc made the ridiculous choice to use pass-by-register calling convention for these functions, which is impossible to duplicate directly on non-gcc compilers. instead, we use ugly asm to wrap and convert the calling convention. presumably this works with every compiler anyone could potentially want to use.