| commit | a028e7a39c986845f216f652e1bb28fdfc81e5f7 | [log] [tgz] |
|---|---|---|
| author | Chris Lattner <sabre@nondot.org> | Tue Sep 27 22:18:25 2005 +0000 |
| committer | Chris Lattner <sabre@nondot.org> | Tue Sep 27 22:18:25 2005 +0000 |
| tree | 1f617d5cb87e4d16b421ca763e3aa9ed5674a050 | |
| parent | 0fd8f9fbc9bf287d0052af7721348ce40bfbe9e0 [diff] |
Darwin, like many BSD systems, has a setjmp/longjmp which saves the signal mask on setjmp calls and restores it on longjmp calls (both of which require syscalls). This makes the calls REALLY slow. Use _setjmp/_longjmp instead. This speeds up hexxagon from 120.31s to 15.68s: from 5.53x slower than GCC to 28% faster than GCC. llvm-svn: 23482