Rust for Linux List
 help / color / mirror / Atom feed
* `u64` by `u64` div/mod in DRM QR for arm32
@ 2025-04-14 18:14 Miguel Ojeda
  2025-04-14 19:21 ` Christian Schrefl
  2025-04-14 20:04 ` Miguel Ojeda
  0 siblings, 2 replies; 7+ messages in thread
From: Miguel Ojeda @ 2025-04-14 18:14 UTC (permalink / raw)
  To: Jocelyn Falempe, Christian Schrefl
  Cc: Arnd Bergmann, rust-for-linux, Linux ARM, dri-devel

Hi Jocelyn, Christian,

I started build-testing arm 32-bit within my other usual routine
tests, and I hit:

    ld.lld: error: undefined symbol: __aeabi_uldivmod
    >>> referenced by drm_panic_qr.rs:417 (drivers/gpu/drm/drm_panic_qr.rs:417)
    >>> drivers/gpu/drm/drm_panic_qr.o:(<drm_panic_qr::SegmentIterator
as core::iter::traits::iterator::Iterator>::next) in archive vmlinux.a

which comes from both these `u64` by `u64`:

    let out = (self.carry / pow) as u16;
    self.carry = self.carry % pow;

Christian: I guess we can offer a set of `div64` functions using the C
ones, at least for the time being, and eventually wire the actual
operator with some support from upstream Rust. Or do you have
something else in mind? (i.e. I think you have been discussing
intrinsics lately)

Thanks!

Cheers,
Miguel

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2025-05-05  7:37 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-04-14 18:14 `u64` by `u64` div/mod in DRM QR for arm32 Miguel Ojeda
2025-04-14 19:21 ` Christian Schrefl
2025-04-14 19:46   ` Russell King (Oracle)
2025-04-15  9:14     ` Jocelyn Falempe
2025-04-15 12:50       ` Paolo Bonzini
2025-05-05  7:37     ` Geert Uytterhoeven
2025-04-14 20:04 ` Miguel Ojeda

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox