[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [tor-bugs] #16467 [Tor]: Faster Ed25519 implementation.
#16467: Faster Ed25519 implementation.
-----------------------------+------------------------------------
Reporter: yawning | Owner:
Type: enhancement | Status: needs_review
Priority: normal | Milestone: Tor: 0.2.7.x-final
Component: Tor | Version: Tor: 0.2.7
Resolution: | Keywords: performance, tor-relay
Actual Points: | Parent ID: #9663
Points: |
-----------------------------+------------------------------------
Comment (by teor):
I built using this incredibly convoluted set of compiler command-line
flags with clang-3.7:
`clang -g -fno-omit-frame-pointer -fasynchronous-unwind-tables -fno-
optimize-sibling-calls -fno-inline -DPARANOIA -fstack-protector-all
-fsanitize=undefined -fno-sanitize-recover=all -fsanitize-
blacklist=contrib/clang/sanitize_blacklist.txt -fno-omit-frame-pointer
-fasynchronous-unwind-tables -fno-optimize-sibling-calls -fno-inline
-fsanitize=address -fsanitize-
blacklist=contrib/clang/sanitize_blacklist.txt -fno-omit-frame-pointer
-fasynchronous-unwind-tables -fno-optimize-sibling-calls -fno-inline -O0
-arch x86_64`
And I ran out of registers:
{{{
In file included from src/ext/ed25519/donna/ed25519.c:18:
In file included from src/ext/ed25519/donna/ed25519-donna.h:101:
src/ext/ed25519/donna/ed25519-donna-64bit-x86.h:14:3: error: inline
assembly requires more registers than available
"movq %0, %%rax ;\n"
^
src/ext/ed25519/donna/ed25519-donna-64bit-x86.h:14:3: error: inline
assembly requires more registers than available
2 errors generated.
make[1]: *** [src/ext/ed25519/donna
/src_ext_ed25519_donna_libed25519_donna_a-ed25519.o] Error 1
}}}
But a minimal configure with no extra clang options works fine:
`./configure --with-openssl-dir=/opt/local --with-libevent-dir=/opt/local`
This appears to be an issue with the options I'm using taking up
registers. I bet it's either the sanitizers, or the debugging /
optimization-disabling options.
I'll try to work out which. Any pointers in the right direction would be
appreciated.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/16467#comment:9>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
_______________________________________________
tor-bugs mailing list
tor-bugs@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs