* [PATCH ARM] Compile on Raspberry Pi
@ 2018-08-28 22:22 Francis Booth
2018-08-29 4:05 ` Jason A. Donenfeld
2018-08-29 7:07 ` Emeka
0 siblings, 2 replies; 4+ messages in thread
From: Francis Booth @ 2018-08-28 22:22 UTC (permalink / raw)
To: wireguard
[-- Attachment #1: Type: text/plain, Size: 1736 bytes --]
Attempting to build Wireguard on a Raspberry Pi will result in an
assembly error
Error: immediate expression requires a # prefix -- `moveq r5,1'
(the full build error log can be found here: https://pastebin.com/CKTXwGyG)
Appending # to the values and telling ARM to treat them as literals
solves the issue.
I was able to test this patch out on my own Raspberry Pi 3B+ and can
confirm the resulting build is successfully able to build, create the
wg0 interface, generate a private key, connect to a peer, and send
encrypted messages back and forth.
justw and revel assisted in providing the fix via the Wireguard irc channel.
curve25519: arm: Compile on Raspi
diff --git a/src/crypto/curve25519-arm.S b/src/crypto/curve25519-arm.S
index cb40c24..f9d50e9 100644
--- a/src/crypto/curve25519-arm.S
+++ b/src/crypto/curve25519-arm.S
@@ -1554,35 +1554,35 @@ ENTRY(curve25519_neon)
movw r4, 0
movw r5, 2
cmp r1, #1
- moveq r5, 1
+ moveq r5, #1
addeq r2, r3, #336
addeq r4, r3, #48
cmp r1, #2
- moveq r5, 1
+ moveq r5, #1
addeq r2, r3, #48
cmp r1, #3
- moveq r5, 5
+ moveq r5, #5
addeq r4, r3, #336
cmp r1, #4
- moveq r5, 10
+ moveq r5, #10
cmp r1, #5
- moveq r5, 20
+ moveq r5, #20
cmp r1, #6
- moveq r5, 10
+ moveq r5, #10
addeq r2, r3, #336
addeq r4, r3, #336
cmp r1, #7
- moveq r5, 50
+ moveq r5, #50
cmp r1, #8
- moveq r5, 100
+ moveq r5, #100
cmp r1, #9
- moveq r5, 50
+ moveq r5, #50
addeq r2, r3, #336
cmp r1, #10
- moveq r5, 5
+ moveq r5, #5
addeq r2, r3, #48
cmp r1, #11
- moveq r5, 0
+ moveq r5, #0
addeq r2, r3, #96
add r6, r3, #144
add r7, r3, #288
[-- Attachment #2: Type: text/html, Size: 2414 bytes --]
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH ARM] Compile on Raspberry Pi
2018-08-28 22:22 [PATCH ARM] Compile on Raspberry Pi Francis Booth
@ 2018-08-29 4:05 ` Jason A. Donenfeld
2018-08-29 7:07 ` Emeka
1 sibling, 0 replies; 4+ messages in thread
From: Jason A. Donenfeld @ 2018-08-29 4:05 UTC (permalink / raw)
To: boothf; +Cc: WireGuard mailing list
Thanks! Fixed with:
https://git.zx2c4.com/WireGuard/commit/?id=4a5ef87efbc73d21107cb64cbaac3112bafd5288
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH ARM] Compile on Raspberry Pi
2018-08-28 22:22 [PATCH ARM] Compile on Raspberry Pi Francis Booth
2018-08-29 4:05 ` Jason A. Donenfeld
@ 2018-08-29 7:07 ` Emeka
2018-08-29 10:34 ` logcabin
1 sibling, 1 reply; 4+ messages in thread
From: Emeka @ 2018-08-29 7:07 UTC (permalink / raw)
To: Francis Booth; +Cc: wireguard
[-- Attachment #1: Type: text/plain, Size: 2178 bytes --]
I was able to build on rpi b3 (board 2710 ) some months ago... and I didn't
encounter this . Can I see the steps you followed?
Regards, Janus
On Wed, Aug 29, 2018, 5:05 AM Francis Booth <boothf@boothlabs.me> wrote:
> Attempting to build Wireguard on a Raspberry Pi will result in an assembly
> error
>
> Error: immediate expression requires a # prefix -- `moveq r5,1'
>
> (the full build error log can be found here: https://pastebin.com/CKTXwGyG
> )
>
> Appending # to the values and telling ARM to treat them as literals solves
> the issue.
>
> I was able to test this patch out on my own Raspberry Pi 3B+ and can
> confirm the resulting build is successfully able to build, create the wg0
> interface, generate a private key, connect to a peer, and send encrypted
> messages back and forth.
>
> justw and revel assisted in providing the fix via the Wireguard irc
> channel.
>
>
> curve25519: arm: Compile on Raspi
>
> diff --git a/src/crypto/curve25519-arm.S b/src/crypto/curve25519-arm.S
> index cb40c24..f9d50e9 100644
> --- a/src/crypto/curve25519-arm.S
> +++ b/src/crypto/curve25519-arm.S
> @@ -1554,35 +1554,35 @@ ENTRY(curve25519_neon)
> movw r4, 0
> movw r5, 2
> cmp r1, #1
> - moveq r5, 1
> + moveq r5, #1
> addeq r2, r3, #336
> addeq r4, r3, #48
> cmp r1, #2
> - moveq r5, 1
> + moveq r5, #1
> addeq r2, r3, #48
> cmp r1, #3
> - moveq r5, 5
> + moveq r5, #5
> addeq r4, r3, #336
> cmp r1, #4
> - moveq r5, 10
> + moveq r5, #10
> cmp r1, #5
> - moveq r5, 20
> + moveq r5, #20
> cmp r1, #6
> - moveq r5, 10
> + moveq r5, #10
> addeq r2, r3, #336
> addeq r4, r3, #336
> cmp r1, #7
> - moveq r5, 50
> + moveq r5, #50
> cmp r1, #8
> - moveq r5, 100
> + moveq r5, #100
> cmp r1, #9
> - moveq r5, 50
> + moveq r5, #50
> addeq r2, r3, #336
> cmp r1, #10
> - moveq r5, 5
> + moveq r5, #5
> addeq r2, r3, #48
> cmp r1, #11
> - moveq r5, 0
> + moveq r5, #0
> addeq r2, r3, #96
> add r6, r3, #144
> add r7, r3, #288
>
> _______________________________________________
> WireGuard mailing list
> WireGuard@lists.zx2c4.com
> https://lists.zx2c4.com/mailman/listinfo/wireguard
>
[-- Attachment #2: Type: text/html, Size: 3246 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH ARM] Compile on Raspberry Pi
2018-08-29 7:07 ` Emeka
@ 2018-08-29 10:34 ` logcabin
0 siblings, 0 replies; 4+ messages in thread
From: logcabin @ 2018-08-29 10:34 UTC (permalink / raw)
To: wireguard
[-- Attachment #1: Type: text/plain, Size: 2447 bytes --]
I've been building wg on an rpi b3 for quite some time and have never
seen this error. This is with Raspbian Stretch. Maybe compiler related?
On Wed, Aug 29, 2018, at 3:07 AM, Emeka wrote:
> I was able to build on rpi b3 (board 2710 ) some months ago... and I
> didn't encounter this . Can I see the steps you followed?>
> Regards, Janus
>
> On Wed, Aug 29, 2018, 5:05 AM Francis Booth
> <boothf@boothlabs.me> wrote:>> Attempting to build Wireguard on a Raspberry Pi will result in an
>> assembly error>> Error: immediate expression requires a # prefix -- `moveq r5,1'>> (the full build error log can be found here:
>> https://pastebin.com/CKTXwGyG)>> Appending # to the values and telling ARM to treat them as literals
>> solves the issue.>> I was able to test this patch out on my own Raspberry Pi 3B+ and can
>> confirm the resulting build is successfully able to build, create the
>> wg0 interface, generate a private key, connect to a peer, and send
>> encrypted messages back and forth.>> justw and revel assisted in providing the fix via the Wireguard irc
>> channel.>>
>> curve25519: arm: Compile on Raspi diff --git a/src/crypto/curve25519-
>> arm.S b/src/crypto/curve25519-arm.S index cb40c24..f9d50e9 100644 ---
>> a/src/crypto/curve25519-arm.S +++ b/src/crypto/curve25519-arm.S @@
>> -1554,35 +1554,35 @@ ENTRY(curve25519_neon) movw r4, 0 movw r5, 2
>> cmp r1, #1 - moveq r5, 1 + moveq r5, #1 addeq r2, r3, #336
>> addeq r4, r3, #48 cmp r1, #2 - moveq r5, 1 + moveq r5, #1 addeq
>> r2, r3, #48 cmp r1, #3 - moveq r5, 5 + moveq r5, #5 addeq r4,
>> r3, #336 cmp r1, #4 - moveq r5, 10 + moveq r5, #10 cmp r1, #5 -
>> moveq r5, 20 + moveq r5, #20 cmp r1, #6 - moveq r5, 10 + moveq
>> r5, #10 addeq r2, r3, #336 addeq r4, r3, #336 cmp r1, #7 -
>> moveq r5, 50 + moveq r5, #50 cmp r1, #8 - moveq r5, 100 + moveq
>> r5, #100 cmp r1, #9 - moveq r5, 50 + moveq r5, #50 addeq r2,
>> r3, #336 cmp r1, #10 - moveq r5, 5 + moveq r5, #5 addeq r2, r3,
>> #48 cmp r1, #11 - moveq r5, 0 + moveq r5, #0 addeq r2, r3, #96
>> add r6, r3, #144 add r7, r3, #288>> _______________________________________________
>> WireGuard mailing list
>> WireGuard@lists.zx2c4.com
>> https://lists.zx2c4.com/mailman/listinfo/wireguard
> _________________________________________________
> WireGuard mailing list
> WireGuard@lists.zx2c4.com
> https://lists.zx2c4.com/mailman/listinfo/wireguard
[-- Attachment #2: Type: text/html, Size: 4098 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2018-08-29 10:20 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-08-28 22:22 [PATCH ARM] Compile on Raspberry Pi Francis Booth
2018-08-29 4:05 ` Jason A. Donenfeld
2018-08-29 7:07 ` Emeka
2018-08-29 10:34 ` logcabin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).