<re_irc> <Yuhan Lin> cr1901: Does your PR enable instructions to be performed directly on memory locations?
<re_irc> <adamgreig> Yuhan Lin: looks like cr1901 replied earlier today about that
<re_irc> <Yuhan Lin> I don't see the reply (might have been because I had Element closed)
<re_irc> <adamgreig> Element should let you scroll back to earlier messages... it's in the logs here though: https://libera.irclog.whitequark.org/rust-embedded/2022-01-23#1642926467-1642926738;
<cr1901> Yuhan Lin: Yes, operating on memory locations is supported, but ONLY using register indirect
<re_irc> <Yuhan Lin> I just know that MSP430 supports arithmetic/logic operations directly on memory locations.
<cr1901> Yuhan Lin: Yes, but Rust's inline asm semantics do not support it. cc: Amanieu if you're around
<cr1901> Maybe I can use the lateinout specifier to reduce the cost
<re_irc> <Yuhan Lin> So what's different about register indirect?
<Amanieu> You can use any addressing mode you want, but in the end you have to pass a pointer into the asm! via a register.
<cr1901> Yuhan Lin: It's a bit of a size cost compared to directly addressing memory
<cr1901> If atomicbool were limited to only targeting static memory locations via its Self parameter, there might be something salvageable
<cr1901> but since atomicbool can't know the address it lives at at compile time in the general case, we pay the addr mode cost
<cr1901> Amanieu: Awesome, it's in! Tyvm for the help: https://github.com/rust-lang/rust/pull/93219#event-5939233377
<re_irc> <adamgreig> aw, i always forget the little emoji reactions don't make it across the irc bridge, and my irc client wouldn't render emojis anyway
<re_irc> <adamgreig> anyway nice work cr1901 :)
jackneillll has joined #rust-embedded
jackneilll has quit [Ping timeout: 256 seconds]
emerent has quit [Ping timeout: 240 seconds]
emerent has joined #rust-embedded
<re_irc> <sajattack> can I show off some embedded-linux shenanigans here?
<re_irc> <sajattack> I guess I should probably just tweet about it
<re_irc> <9names (@9names:matrix.org)> no, please share!
<re_irc> <9names (@9names:matrix.org)> you can also tweet about it :D
<re_irc> <sajattack> how about I share the tweet here so it gets more buzz xD https://twitter.com/sajattack/status/1485524263633240069
<re_irc> <sajattack> * algorithm juice
<re_irc> <9names (@9names:matrix.org)> that works for me! i'm just too lazy to find tweets.
<re_irc> <9names (@9names:matrix.org)> ooh! have you got wifi going?'
<re_irc> <sajattack> yes!
<re_irc> <9names (@9names:matrix.org)> i was deeply saddened when the "official" debian build has only got drivers for the _other_ wifi module
<re_irc> <sajattack> there is an image from sipeed with wifi drivers and debian
<re_irc> <9names (@9names:matrix.org)> no, i've got one of the images from sipeed, it doesn't have the realtek drivers
<re_irc> <sajattack> but it also inexplicably has 8 partitions
<re_irc> <sajattack> and lots of cruft
<re_irc> <9names (@9names:matrix.org)> yeah :/
<re_irc> <sajattack> let me figure out where I got it from
<re_irc> <9names (@9names:matrix.org)> i was ready to sink some time into it, but lack of networking out of the box really sucked the wind from my sails
<re_irc> <sajattack> converted to dd format because fuck phoenixcard https://mirrors.romanrm.net/risc-v/20211230_LicheeRV_debian_d1_hdmi_8723ds.ddimg.xz
<re_irc> <9names (@9names:matrix.org)> thanks for that too, dealing with phoenixsuit rustles my jimmies
<re_irc> <sajattack> yeah I couldn't deal with phoenixcard, it doesn't run on WinPE or Wine
<re_irc> <9names (@9names:matrix.org)> i rebooted to windows to do it, i've dealt with allwinner stuff before. not fun.
<re_irc> <sajattack> I haven't found a good way to get the hdmi going on my custom install
<re_irc> <sajattack> it seems sipeed uses hdmi20.ko from tinalinux
<re_irc> <9names (@9names:matrix.org)> i'm actually not sure how it's hooked up in the official image - it looks really weird, xrandr has no idea what's going on
<re_irc> <sajattack> it's an fbdev, maybe that's something to do with it
<re_irc> <9names (@9names:matrix.org)> yeah that would do it. badly ported android driver maybe?
<re_irc> <sajattack> tinalinux, it's an openwrt thing from allwinner
<re_irc> <sajattack> afaik
<re_irc> <sajattack> also it's NDAed or at the very least behind login wall afaict
<re_irc> <sajattack> uhh, is it possible to compile core with 512M of RAM or am I gonna OOM?
<re_irc> <sajattack> cuz it looks like I'm gonna OOM
<re_irc> <sajattack> It's using 20% cpu and 99% ram
<re_irc> <9names (@9names:matrix.org)> my guess is def. OOM. even with ZRAM and swap you're going to have a bad time.
<re_irc> if you want a non-cross compile it's going to be faster and safer in QEMU
<re_irc> <sajattack> yeah lol I was just hoping I could compile my other project that builds binaries for the sony psp in here, but seems like maybe not
<re_irc> <sajattack> it was just as a gag mostly
<re_irc> <9names (@9names:matrix.org)> i'm very supportive of gag driven development
<re_irc> <sajattack> thank you
<re_irc> <9names (@9names:matrix.org)> did you have much issue finding an SD card that the D1 would boot?
<re_irc> <9names (@9names:matrix.org)> i have mostly sandisk cards, and they did not go well
<re_irc> <sajattack> sometimes it hangs at "waiting for root on /dev/mmcblk0p2" inexplicably, but no major issue
<re_irc> <sajattack> just gotta reset a few times and it boots
<re_irc> <sajattack> I'm using these https://www.amazon.ca/gp/product/B08KSV5KBM
<re_irc> <sajattack> officially OOMed
<re_irc> <sajattack> oh well
<re_irc> <9names (@9names:matrix.org)> a tragedy in 3 parts
<re_irc> 9165226496 bytes (9.2 GB, 8.5 GiB) copied, 2248 s, 4.1 MB/s
<re_irc> <9names (@9names:matrix.org)> i wish this card were faster
<re_irc> <sajattack> ouch
<re_irc> <9names (@9names:matrix.org)> oh, i forgot to give it a bigger bs. okay, that one's on me.
<re_irc> <sajattack> yeah bs=4M
<re_irc> <sajattack> <3
<re_irc> <9names (@9names:matrix.org)> rough to remember it this far in
<re_irc> <sajattack> haha
<re_irc> <sajattack> status=progress is really nice too
<re_irc> <9names (@9names:matrix.org)> what, you don't enjoy using kill to work out if the dd you started days ago is still doing anything?
<re_irc> <9names (@9names:matrix.org)> still sets my teeth on edge just thinking about it
<re_irc> <sajattack> yeah been there done that
<re_irc> <sajattack> maybe I should try yosys or something next
<re_irc> <sajattack> would that run in 512M of RAM?
<re_irc> <sajattack> or compile for rv64?
<re_irc> <9names (@9names:matrix.org)> rv64: almost certainly - not a clue about memory usage for doing it though
<re_irc> <sajattack> yeah I probably wouldn't try to compile it on device
<re_irc> <sajattack> but running it I'm not even sure about
<re_irc> <9names (@9names:matrix.org)> well i got tired of waiting for the slow SD card image to work and started one on a sandisk card. not only did it finish first, it actually booted correctly first time!
<re_irc> <sajattack> woo
<re_irc> <9names (@9names:matrix.org)> user/pass?
<re_irc> <sajattack> sipeed licheepi
<re_irc> <sajattack> btw it kernel oops'es every 30 seconds
<re_irc> <sajattack> better than kernel panic every 30 seconds I suppose
<re_irc> <sajattack> and the kernel is on a random partition you can't mount
<re_irc> <9names (@9names:matrix.org)> uh... I guess that makes updating it interesting? :D
<re_irc> <sajattack> yeah idk if you can
<re_irc> <sajattack> this is why I built my own image
starblue1 has quit [Ping timeout: 240 seconds]
starblue1 has joined #rust-embedded
<re_irc> <ryan-summers> Does anyone know how crates.io tracks download metrics? E.g. if you have automated builds, does each build count as a "download" as well?
<re_irc> <ryan-summers> My suspicion is that each GH actions job that builds the code ends up counting as one download on crates.io
<re_irc> <adamgreig> I think that's correct
<re_irc> <adamgreig> hence the popular weekday-weekend ratio, because lots of commercial work causes loads of downloads on weekdays, while hobbyist stuff is more popularly downloaded on weekends, so someone worked out which crates were most popular with hobbyists vs commercial users
<re_irc> <adamgreig> and downloads doesn't count anyone doing their own caching or vendored code, but I guess it's a hard metric to track otherwise
Lumpio- has quit [Quit: o/]
crabbedhaloablut has quit [Remote host closed the connection]
crabbedhaloablut has joined #rust-embedded
<re_irc> <firefrommoonlight> ryan-summers: Refactored timer module - https://docs.rs/stm32-hal2/latest/stm32_hal2/timer/index.html
<re_irc> <firefrommoonlight> May not do everything you had to use PAC for, but is hopefully a step in the right direction. Still a macro mess, but a more manageable one than before
unmanbearpig has joined #rust-embedded
Amadiro has quit [Quit: Leaving]
Amadiro has joined #rust-embedded
Amadiro has quit [Quit: Leaving]
Amadiro has joined #rust-embedded
Lumpio- has joined #rust-embedded
neceve has joined #rust-embedded
Lumpio- has quit [Quit: WeeChat 3.1-dev]
Shell is now known as Shyll
Shyll is now known as Shell
<re_irc> <nikomatsakis> Besides this repo (https://github.com/johnthagen/min-sized-rust), what resources would people recommend for someone who is concerned about Rust binary size?
<re_irc> <adamgreig> I think that either mentions or links to everything that comes to my mind...
neceve has quit [Ping timeout: 268 seconds]
mightypork_ has quit [Quit: ZNC - https://znc.in]