Kaizen_Kintsugi_ has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has quit [Ping timeout: 252 seconds]
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
brunoerg has quit [Remote host closed the connection]
shesek_ has quit [Remote host closed the connection]
shesek_ has joined #bitcoin-core-dev
brunoerg has joined #bitcoin-core-dev
brunoerg has quit [Ping timeout: 256 seconds]
rex4539 has joined #bitcoin-core-dev
shesek__ has joined #bitcoin-core-dev
shesek_ has quit [Remote host closed the connection]
rex4539 has quit [Ping timeout: 240 seconds]
brunoerg has joined #bitcoin-core-dev
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
rex4539 has joined #bitcoin-core-dev
rex4539 has quit [Ping timeout: 240 seconds]
vysn has joined #bitcoin-core-dev
Evel-Knievel has quit [Ping timeout: 246 seconds]
Kaizen_Kintsugi_ has quit [Ping timeout: 250 seconds]
Evel-Knievel has joined #bitcoin-core-dev
rex4539 has joined #bitcoin-core-dev
rex4539 has quit [Ping timeout: 240 seconds]
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has quit [Remote host closed the connection]
brunoerg has quit [Ping timeout: 252 seconds]
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
bomb-on has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has quit [Remote host closed the connection]
bomb-on has quit [Ping timeout: 260 seconds]
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
brunoerg has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has quit [Ping timeout: 260 seconds]
mikehu44 has joined #bitcoin-core-dev
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
bitdex has joined #bitcoin-core-dev
hashfunc159a has quit [Remote host closed the connection]
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has quit [Ping timeout: 260 seconds]
rex4539 has joined #bitcoin-core-dev
rex4539 has quit [Ping timeout: 240 seconds]
brunoerg has quit [Ping timeout: 260 seconds]
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
rex4539 has joined #bitcoin-core-dev
brunoerg has joined #bitcoin-core-dev
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
achow101 has quit [Quit: Bye]
achow101 has joined #bitcoin-core-dev
cmirror has quit [Remote host closed the connection]
cmirror has joined #bitcoin-core-dev
realies has quit [Quit: ~]
realies has joined #bitcoin-core-dev
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
<jeremyrubin> reardencode: i think this can still come up with codesep, but YMMV
bitcoin-git has joined #bitcoin-core-dev
<bitcoin-git> [bitcoin] ajtowns opened pull request #24729: util/check: avoid unused parameter warnings (master...202204-assume-gcc-fix) https://github.com/bitcoin/bitcoin/pull/24729
bitcoin-git has left #bitcoin-core-dev [#bitcoin-core-dev]
brunoerg has quit [Ping timeout: 250 seconds]
rex4539 has quit [Ping timeout: 240 seconds]
Kaizen_Kintsugi_ has quit [Ping timeout: 250 seconds]
bfsfhkacjzgcytf9 has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has quit [Remote host closed the connection]
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has quit [Ping timeout: 260 seconds]
brunoerg has joined #bitcoin-core-dev
yanmaani has quit [Ping timeout: 240 seconds]
brunoerg has quit [Ping timeout: 260 seconds]
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
mikehu44_ has joined #bitcoin-core-dev
rex4539 has joined #bitcoin-core-dev
mikehu44 has quit [Ping timeout: 272 seconds]
mikehu44__ has joined #bitcoin-core-dev
mikehu44_ has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
brunoerg has joined #bitcoin-core-dev
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
mikehu44__ has quit [Ping timeout: 246 seconds]
yanmaani has joined #bitcoin-core-dev
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
<hebasto> "Using the 'standard' SHA256 implementation" means no hardware acceleration, right?
mikehu44 has joined #bitcoin-core-dev
hashfunc929 has joined #bitcoin-core-dev
mikehu44 has quit [Ping timeout: 256 seconds]
hashfunc929 has quit [Remote host closed the connection]
mikehu44 has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has quit [Ping timeout: 260 seconds]
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has quit [Ping timeout: 260 seconds]
brunoerg has quit [Ping timeout: 240 seconds]
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has quit [Ping timeout: 260 seconds]
bitcoin-git has joined #bitcoin-core-dev
<bitcoin-git> [bitcoin] MarcoFalke pushed 2 commits to master: https://github.com/bitcoin/bitcoin/compare/1021e4cc6877...7ab9fc32d6a8
<bitcoin-git> bitcoin/master bf77fea fanquake: test: fix incorrect named args in txpackage tests
bitcoin-git has left #bitcoin-core-dev [#bitcoin-core-dev]
<bitcoin-git> bitcoin/master 7ab9fc3 MarcoFalke: Merge bitcoin/bitcoin#24724: test: fix incorrect named args in txpackage t...
bitcoin-git has joined #bitcoin-core-dev
<bitcoin-git> [bitcoin] MarcoFalke merged pull request #24724: test: fix incorrect named args in txpackage tests (master...txpackage_named_args) https://github.com/bitcoin/bitcoin/pull/24724
bitcoin-git has left #bitcoin-core-dev [#bitcoin-core-dev]
bitcoin-git has joined #bitcoin-core-dev
<bitcoin-git> bitcoin/23.x 4f3ba85 Hennadii Stepanov: wallet, refactor: Add wallet::NotifyWalletLoaded() function
<bitcoin-git> bitcoin/23.x 1448c99 Hennadii Stepanov: wallet: Postpone NotifyWalletLoaded() for encrypted wallets
<bitcoin-git> [bitcoin] MarcoFalke pushed 3 commits to 23.x: https://github.com/bitcoin/bitcoin/compare/e181e94e8663...e089c68aa17a
<bitcoin-git> bitcoin/23.x e089c68 MarcoFalke: Merge bitcoin/bitcoin#24725: 23.0: rc4 backport
bitcoin-git has left #bitcoin-core-dev [#bitcoin-core-dev]
bitcoin-git has joined #bitcoin-core-dev
<bitcoin-git> [bitcoin] MarcoFalke merged pull request #24725: 23.0: rc4 backport (23.x...2203-23rc4-🏅) https://github.com/bitcoin/bitcoin/pull/24725
bitcoin-git has left #bitcoin-core-dev [#bitcoin-core-dev]
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
brunoerg has joined #bitcoin-core-dev
jarthur has quit [Quit: jarthur]
bitcoin-git has joined #bitcoin-core-dev
<bitcoin-git> [bitcoin] MarcoFalke opened pull request #24731: Change code (master...2203-change-code-🎵) https://github.com/bitcoin/bitcoin/pull/24731
bitcoin-git has left #bitcoin-core-dev [#bitcoin-core-dev]
jonatack85 has quit [Ping timeout: 260 seconds]
lukedashjr has joined #bitcoin-core-dev
luke-jr has quit [Ping timeout: 260 seconds]
lukedashjr is now known as luke-jr
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
<laanwj> kidding aside wine is a pretty cool platform, i'm always surprised how well it works
brunoerg has quit [Ping timeout: 260 seconds]
Kaizen_Kintsugi_ has quit [Ping timeout: 250 seconds]
<laanwj> hebasto: yes
<laanwj> but that shouldn't realistically happen on x86_64, sse4 is so common
<laanwj> and, definitely everything that has AVX2 will have that
jonatack has joined #bitcoin-core-dev
<hebasto> laanwj: this is our msvc build
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
ghost43_ has joined #bitcoin-core-dev
ghost43 has quit [Remote host closed the connection]
<laanwj> hebasto: oh, i would guess the special instructions code isn't compiled at all on that, it takes some build system magic to compile the right modules with the right instruction support
<fanquake> * [new tag] v23.0rc3 -> v23.0rc3
<fanquake> cfields: clang + mingw-w64 is still a work in progress 😅
<laanwj> fanquake: thanks!
hsmiths has quit [Quit: Connection closed for inactivity]
<real_or_random> only remotely related: it's even possible to use MSVC + wine with autotools https://github.com/bitcoin-core/secp256k1/pull/1084
<laanwj> real_or_random: nice! not an option for bootstrappable deterministic builds, but still
bitcoin-git has joined #bitcoin-core-dev
<bitcoin-git> [bitcoin] MarcoFalke opened pull request #24732: Remove buggy and confusing IncrementExtraNonce (master...2204-remove-code-🌗) https://github.com/bitcoin/bitcoin/pull/24732
bitcoin-git has left #bitcoin-core-dev [#bitcoin-core-dev]
brunoerg has joined #bitcoin-core-dev
<real_or_random> oh just noticed that the PR description was still outdated. this now uses the full MSVC toolchain including lib.exe and dumpbin.exe
bitcoin-git has joined #bitcoin-core-dev
<bitcoin-git> [bitcoin] hebasto opened pull request #24733: build: Fix "ERR: Unsigned tarballs do not exist" (master...220401-sign) https://github.com/bitcoin/bitcoin/pull/24733
bitcoin-git has left #bitcoin-core-dev [#bitcoin-core-dev]
<fanquake> heh. I just ran into the same issue
<fanquake> I think rc3 might just become rc4
<laanwj> still good we tried to go forward with rc3 to run into this issue
<fanquake> yep. at least now that the tarball naming / normalizing is done, it's done
<laanwj> but it will be after the weekend, i first need to rebuild 22.0 to get the symbols to know where to disassemble, this will take a while as i've guix-cleaned everything the 22.x dependency chain apparently
<laanwj> hebasto: but fwiw 22.0 has no vmovdqa instructions involving the stack, at all
<hebasto> so, it is a compiler, right?
<laanwj> yes, it's a compiler change
<laanwj> it just happened to work with last version (this might be accidental, e.g. some -mavx256-split-unaligned-store tuning cfields was talking about yesterday), or an actually introduced new bug
<laanwj> pretty sure i found the function without hand-holding actually (there's only one function where ymmX is used)
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
shesek__ has quit [Remote host closed the connection]
<laanwj> ok https://gist.github.com/laanwj/95d97cd218d99c68c1437115e0db9394 has both v22.0 and v23.0rc2 implementations now (you might want to check out the repo or download the zip it's too large to view in the browser)
shesek__ has joined #bitcoin-core-dev
<laanwj> the 22.0 implementation is smaller and looks more streamlined, did we *disable* any kind of optimization?
<laanwj> notably, _ZN14sha256d64_avx212_GLOBAL__N_16Write8EPhiDv4_x [sha256d64_avx2::(anonymous namespace)::Write8(unsigned char*, int, long long __vector(4))] is only called in the 23.0rc2 implementation
<laanwj> in comparison the 22.0 implementation has only one call, at the end, i suppose the stack check failure
<jonatack> laanwj: (looked at the lock logging undo, will push a pull soon)
<laanwj> this relates to the problematic 0x260(%rsp) ... so it looks like an inlining failure!
<laanwj> jonatack: awesome, thanks
<laanwj> maybe it's not actually spilling as thought
kexkey has quit [Ping timeout: 246 seconds]
kexkey has joined #bitcoin-core-dev
<laanwj> maybe always inlining __attribute__((always_inline)) at least ::Write would work around it
<laanwj> it feels scary and could break any time, of course
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
<jonatack> gg almost 11k lines in that gist, when it's finished would love to learn more how you are troubleshooting this
<jonatack> thanks, i have it opened in my editor now
<fanquake> It looks like atleast Debian / Ubuntu mingw-w64 gcc is patching around either this, or a very similar issue
<fanquake> "Use unaligned VMOV instructions to avoid crashes caused by mis-aligned values; thanks to Claude Heiland-Allen for the patch! Closes: #939559."
<gribble> https://github.com/bitcoin/bitcoin/issues/939559 | HTTP Error 404: Not Found
<laanwj> fanquake: sounds vaguely like it may be it
<fanquake> 939559 is this issue, https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=939559, which concludes that it's related to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54412
<fanquake> which is the GCC bug you also seemed to have stumbled on
Kaizen_Kintsugi_ has quit [Ping timeout: 256 seconds]
<laanwj> so if we do the always_inline for Write *and* apply that patch it seems reasonably safe, that said, #24727 is simple and we're sure
<gribble> https://github.com/bitcoin/bitcoin/issues/24727 | build: Disable AVX2 code path on mingw builds by laanwj · Pull Request #24727 · bitcoin/bitcoin · GitHub
<laanwj> it looks like that would successfully prevent vmovdqa instructions from being generated
<fanquake> I guess this also explains why we don't see it in non-guix builds (at least on Debian / Ubuntu). Need to see if Fedora etc patches this too
<laanwj> right, good catch, i'm kind of shocked that something essential like this is part of distro patches
<laanwj> that said i can see why the gcc people deem it too extreme, you wouldn't want to do it on platforms where the alignment assumptions are correct
sudoforge has quit [Ping timeout: 246 seconds]
<laanwj> i'm also a littlbe bit surprised by the different inlining decision between 22.0 and 23.0rc2, we didn't change any optimization flags did we?
<laanwj> it deosn't need to i mean the 'when to inline' heuristics get tweaked all the time
<laanwj> but the resulting code for 22.0 just looks better
<fanquake> No, but we did change from using GCC 7 iirc to GCC 10.3.0
<fanquake> sorry, 8 to 10.3
<laanwj> right
<laanwj> ok it's not as bad as i thought, looking at actual code size instead of .asm text size, (0x14051ce2f-0x1405108d0)/(0x88a15d-0x87da00)=~0.99 the 23.0rc2 implementation is ever so slightly smaller (which makes sense if you stopped inlining something)
<laanwj> so, yeah, i guess applying that patch (for mingw gcc build only) will simply make this problem go away
brunoerg has quit [Ping timeout: 240 seconds]
<fanquake> I'll look at combining that into a guix build we can test
bitcoin-git has joined #bitcoin-core-dev
<bitcoin-git> bitcoin/master 7762c56 Hennadii Stepanov: build: Fix "ERR: Unsigned tarballs do not exist"
<bitcoin-git> [bitcoin] laanwj pushed 2 commits to master: https://github.com/bitcoin/bitcoin/compare/7ab9fc32d6a8...afac75f140a3
<bitcoin-git> bitcoin/master afac75f laanwj: Merge bitcoin/bitcoin#24733: build: Fix "ERR: Unsigned tarballs do not exi...
bitcoin-git has left #bitcoin-core-dev [#bitcoin-core-dev]
bitcoin-git has joined #bitcoin-core-dev
bitcoin-git has left #bitcoin-core-dev [#bitcoin-core-dev]
<bitcoin-git> [bitcoin] laanwj merged pull request #24733: build: Fix "ERR: Unsigned tarballs do not exist" (master...220401-sign) https://github.com/bitcoin/bitcoin/pull/24733
bomb-on has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
greypw2546 has quit [Quit: I'll be back!]
greypw2546 has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has quit [Ping timeout: 260 seconds]
Willtech has quit [Read error: Connection reset by peer]
Willtech has joined #bitcoin-core-dev
brunoerg has joined #bitcoin-core-dev
<laanwj> fanquake: thanks, testing build
brunoerg has quit [Ping timeout: 260 seconds]
bfsfhkacjzgcytf9 has quit [Quit: The Lounge - https://thelounge.chat]
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
bfsfhkacjzgcytf9 has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has quit [Ping timeout: 245 seconds]
<fanquake> can't seem to find any vmovdqa instructions in the disassembled binary
brunoerg has joined #bitcoin-core-dev
<fanquake> just vmovdqu vmovd vmovups
<fanquake> running bitcoind.exe -signet -debug and it hasn't crashed yet
<fanquake> (under wine)
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
bomb-on has quit [Ping timeout: 252 seconds]
mikehu44 has quit [Ping timeout: 260 seconds]
mikehu44 has joined #bitcoin-core-dev
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
bitcoin-git has joined #bitcoin-core-dev
<bitcoin-git> [bitcoin] jonatack opened pull request #24734: sync: revert lock contention from log category to preprocessor directive (master...change-lock-logging-to-DEBUG_LOCKCONTENTION) https://github.com/bitcoin/bitcoin/pull/24734
bitcoin-git has left #bitcoin-core-dev [#bitcoin-core-dev]
jonatack has quit [Quit: Connection closed]
brunoerg has quit [Ping timeout: 245 seconds]
Kaizen_Kintsugi_ has quit [Ping timeout: 260 seconds]
_flood has quit [Remote host closed the connection]
brunoerg has joined #bitcoin-core-dev
flooded has joined #bitcoin-core-dev
flooded has quit [Remote host closed the connection]
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
jonatack has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has quit [Ping timeout: 260 seconds]
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has quit [Ping timeout: 256 seconds]
bitcoin-git has joined #bitcoin-core-dev
<bitcoin-git> [bitcoin] fanquake opened pull request #24735: ci: use DWARF-4 for Valgrind jobs (master...remove_boost_valgrind) https://github.com/bitcoin/bitcoin/pull/24735
bitcoin-git has left #bitcoin-core-dev [#bitcoin-core-dev]
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
jonatack has quit [Ping timeout: 272 seconds]
jonatack has joined #bitcoin-core-dev
bitcoin-git has joined #bitcoin-core-dev
<bitcoin-git> [bitcoin] fanquake opened pull request #24736: guix: fix vmov alignment issues with gcc 10.3.0 & mingw-w64 (master...guix_mingw_w64_vmov_alignment) https://github.com/bitcoin/bitcoin/pull/24736
bitcoin-git has left #bitcoin-core-dev [#bitcoin-core-dev]
bitcoin-git has joined #bitcoin-core-dev
<bitcoin-git> [bitcoin] MarcoFalke opened pull request #24737: Remove taproot chain param (master...2204-rem-code-🥊) https://github.com/bitcoin/bitcoin/pull/24737
bitcoin-git has left #bitcoin-core-dev [#bitcoin-core-dev]
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
dermoth has quit [Read error: Connection reset by peer]
mikehu44 has quit [Ping timeout: 246 seconds]
mikehu44 has joined #bitcoin-core-dev
Guyver2 has joined #bitcoin-core-dev
ashishkr has joined #bitcoin-core-dev
dermoth has joined #bitcoin-core-dev
bitcoin-git has joined #bitcoin-core-dev
<bitcoin-git> [bitcoin] laanwj closed pull request #24727: build: Disable AVX2 code path on mingw builds (master...2022-03-windows-noavx2) https://github.com/bitcoin/bitcoin/pull/24727
bitcoin-git has left #bitcoin-core-dev [#bitcoin-core-dev]
vysn has quit [Remote host closed the connection]
hsmiths has joined #bitcoin-core-dev
dunxen has joined #bitcoin-core-dev
Willtech has quit [Ping timeout: 260 seconds]
bitcoin-git has joined #bitcoin-core-dev
<bitcoin-git> [bitcoin] fanquake opened pull request #24738: build: remove faketime unsetting and comments from configure (master...remove_faketime) https://github.com/bitcoin/bitcoin/pull/24738
bitcoin-git has left #bitcoin-core-dev [#bitcoin-core-dev]
Willtech has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has quit [Ping timeout: 252 seconds]
bitcoin-git has joined #bitcoin-core-dev
<bitcoin-git> [bitcoin] MarcoFalke opened pull request #24739: test: Fix intermittent test failure in wallet_listreceivedby.py (master...2204-test-fail-🍰) https://github.com/bitcoin/bitcoin/pull/24739
bitcoin-git has left #bitcoin-core-dev [#bitcoin-core-dev]
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
bitcoin-git has joined #bitcoin-core-dev
<bitcoin-git> [bitcoin] fanquake pushed 2 commits to master: https://github.com/bitcoin/bitcoin/compare/afac75f140a3...a7f0c37c2bae
<bitcoin-git> bitcoin/master a7f0c37 fanquake: Merge bitcoin/bitcoin#24722: build: patch around qt duplicate symbol issue...
<bitcoin-git> bitcoin/master a24ef27 fanquake: build: patch around qt duplicate symbol issue
bitcoin-git has left #bitcoin-core-dev [#bitcoin-core-dev]
bitcoin-git has joined #bitcoin-core-dev
<bitcoin-git> [bitcoin] fanquake merged pull request #24722: build: patch around qt duplicate symbol issue (master...more_qt_nonsense) https://github.com/bitcoin/bitcoin/pull/24722
bitcoin-git has left #bitcoin-core-dev [#bitcoin-core-dev]
bitcoin-git has joined #bitcoin-core-dev
<bitcoin-git> [bitcoin] fanquake opened pull request #24740: doc: remove incorrect mention of PR_GET_NAME (master...remove_threadnames_comment) https://github.com/bitcoin/bitcoin/pull/24740
bitcoin-git has left #bitcoin-core-dev [#bitcoin-core-dev]
<cfields> dongcarl: does the guix compiler define any macro for detection?
<cfields> Re #24736 , I'm wondering if we could gate that on "#ifdef _GUIX_" or so
<gribble> https://github.com/bitcoin/bitcoin/issues/24736 | guix: fix vmov alignment issues with gcc 10.3.0 & mingw-w64 by fanquake · Pull Request #24736 · bitcoin/bitcoin · GitHub
AaronvanW has joined #bitcoin-core-dev
<fanquake> cfields: that is all happening inside guix, so I'm not quite sure what you mean?
<laanwj> also mind it's a really old problem, that has existed ever since AVX2 support was added to the build, no one ever reported problems with it before so either everyone is using patched cross-compilers or no one is actually using mingw-w64 to build windows binaries for themselves
<laanwj> most windows devs seem to use the MSVC build (which doesn't even support instruction sets, apparently :-)
<cfields> fanquake: sometimes builders or distros hack in their own defines to compilers so that downstreams can test to see if they're using that distro's compiler. Thought that may be the case here.
<cfields> laanwj: yeah, thinking about it more, I guess you're right...
<laanwj> i mean you could cook up some script that does gcc then objdump to see what instructioss are generated to see if the comiler is patched, but i dunno
<cfields> getting a working windows compiler is kinda a dark art, and I guess we kinda have to put the onus on the builder to get themselves a working toolchain.
<laanwj> i guess the safest option is to disable AVX2 for mingw builds, then provide an option to force it to enable
<laanwj> that said, i'm not sure it's worth the extra complexity for something no one encounters in practice
Talkless has joined #bitcoin-core-dev
<fanquake> my assumption would be that most regular users / devs would end up with a working mingw-w64 compiler, from their distro. Anyone who’s doing something a bit more non-mainstream / supported, is also probably more likely to notice if something isn’t working
<laanwj> yeah...
<laanwj> we should encourage using guix to build anyway
<cfields> fanquake: ack
<fanquake> we do have at least one compiler bug test, so we could even add another unit test, where if you’re building for windows, using gcc, and your compiler is emitting aligned vmov instructions, we fail, or similar
<cfields> wait, yeah, right...
<laanwj> a test cuold work, though adding AVX2 code to the test suite does comlicate the build system
<cfields> I thought fanquake meant trying to isolate the crasher and actually make it part of the sha2 sanity check.
<laanwj> e.g. support has to be detected both run and compile time
<laanwj> you'd have to control the stack pointer
<laanwj> that's pretty nasty
Kaizen_Kintsugi_ has quit [Ping timeout: 260 seconds]
<sipa> but also don't know if it's worth the effort
<laanwj> yeah, i'd say not
<sipa> call it from a recursive function that has a 1 byte stack variable, called at various depths
<sipa> that should be pretty likely to trigger it, i think
<laanwj> it's also a very apparent crash, not like a silent corruption
mikehu44 has quit [Ping timeout: 260 seconds]
<sipa> right
<laanwj> you would also have to explicitly call the AVX2 variant in that sanity check so it doesn't depend on the CPU being in a fairly narrow range
<laanwj> but only if the CPU supports AVX2, of course
<laanwj> tbh for rc4 we just need to get this working for our build
<sipa> i think the current open PR is fine
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
<sipa> wahaha, i just look at what the #ChangeTheCode PR is actually doing. That's hilarious.
<cfields> agreed. I didn't mean to complicate. the status quo is clearly the patched compiler. it's just annoying that the status quo is a patched compiler :)
<laanwj> it's sad that the issue sits unpatched upstream for so long wonder if clang does better
<laanwj> windows support is and will be always a second thought in gcc
<cfields> laanwj: yeah. I have a gcc bugzilla account, will drop a "we're affected too" note on the bug, unless you were planning on it.
<laanwj> cfields: feel free to :)
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
<sipa> I also believe that on nearly all CPUs (except the very first that had AVX2), movdqu and movdqa have the same performance (in situations where they both work).
<laanwj> that's good to know
ashishkr has quit [Quit: Connection closed for inactivity]
Kaizen_Kintsugi_ has quit [Ping timeout: 256 seconds]
<earnestly> That cleanupbitcoin website is unbelievable, the amount of js and css anims needed will probably outpace the power usage of bitcoin in a few weeks
Guest547 has joined #bitcoin-core-dev
<earnestly> sipa: Where is the PR?
<laanwj> although i suspect the impact would be minimal anyway even if there was a difference; the only memory-facing (so, not register to register) 256-bit movdqX instructions are to fetch some constant, and to write the result for Write, it's not some memory heavy inner loop
<earnestly> (They don't link to it)
<sipa> Earnestly: we're talking about the response to it, #24731
<gribble> https://github.com/bitcoin/bitcoin/issues/24731 | Change code by MarcoFalke · Pull Request #24731 · bitcoin/bitcoin · GitHub
<earnestly> Ah, I did see that, but skipped it before some reason, thanks
Guest547 has quit [Client Quit]
Guest568 has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
<achow101> laanwj: it seems you missed the mac code signed bins
bfsfhkacjzgcytf9 has quit [Ping timeout: 272 seconds]
Guest568 has quit [Ping timeout: 250 seconds]
yanmaani has quit [Remote host closed the connection]
yanmaani has joined #bitcoin-core-dev
AaronvanW has quit [Remote host closed the connection]
Talkless has quit [Ping timeout: 260 seconds]
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
<laanwj> achow101: huh, yeah that's what you get for having HOSTS only set to windows i guess
AaronvanW has joined #bitcoin-core-dev
AaronvanW has quit [Ping timeout: 260 seconds]
<laanwj> from now on windows is my favorite platform and i'm only going to build for that !
<provoostenator> Bitcoin Bill Gates Vision
<laanwj> lol
mekster66949 has quit [Quit: mekster66949]
mekster66949 has joined #bitcoin-core-dev
<fanquake> we could probably even suggest the vmov patch for upstreaming in guix
<fanquake> Although currently the mingw-w64 build is only carrying reproducibility patches, so they might not be open to it
Kaizen_Kintsugi_ has quit [Ping timeout: 260 seconds]
NorrinRadd has joined #bitcoin-core-dev
AaronvanW has joined #bitcoin-core-dev
kexkey has quit [Ping timeout: 260 seconds]
AaronvanW has quit [Ping timeout: 272 seconds]
yanmaani has quit [Ping timeout: 240 seconds]
kexkey has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
sudoforge has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has quit [Ping timeout: 245 seconds]
NorrinRadd has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<cfields> the bug report has some action already: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54412#c34
<sipa> why does this only affect mingw, does anyone know?
<cfields> "Clang does indeed realign the stack a la GCC, which is OK in simple cases like this with SEH, i.e. when no DRAP is required (MSVC does things totally backwards, since it realigns the frame instead of the stack but we just cannot do that in GCC)."
<cfields> I don't really understand several parts of that answer, but it's an answer :)
<cfields> I guess that translates to: "clang _successfully_ realigns the stack" ?
<laanwj> achow101: added macos build, it matches with you
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
brunoerg has quit [Remote host closed the connection]
sudoforge has quit [Ping timeout: 260 seconds]
bomb-on has joined #bitcoin-core-dev
bomb-on has quit [Read error: Connection reset by peer]
bomb-on has joined #bitcoin-core-dev
brunoerg has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has quit [Remote host closed the connection]
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
brunoerg has quit [Ping timeout: 256 seconds]
AaronvanW has joined #bitcoin-core-dev
NorrinRadd has joined #bitcoin-core-dev
bfsfhkacjzgcytf9 has joined #bitcoin-core-dev
brunoerg has joined #bitcoin-core-dev
khannasid has joined #bitcoin-core-dev
khannasid has left #bitcoin-core-dev [#bitcoin-core-dev]
bomb-on has quit [Read error: Connection reset by peer]
bomb-on has joined #bitcoin-core-dev
realies has quit [Quit: Ping timeout (120 seconds)]
realies has joined #bitcoin-core-dev
sudoforge has joined #bitcoin-core-dev
mudsip has joined #bitcoin-core-dev
mudsip has quit [Client Quit]
mudsip has joined #bitcoin-core-dev
jamesob has quit [Quit: Ping timeout (120 seconds)]
jamesob has joined #bitcoin-core-dev
AaronvanW has quit [Remote host closed the connection]
jamesob has quit [Quit: Ping timeout (120 seconds)]
Kaizen_Kintsugi_ has quit [Remote host closed the connection]
jamesob has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
mudsip has quit []
Kaizen_Kintsugi_ has quit [Ping timeout: 260 seconds]
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
AaronvanW has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has quit [Ping timeout: 256 seconds]
AaronvanW has quit [Ping timeout: 246 seconds]
AaronvanW has joined #bitcoin-core-dev
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
jamesob has quit [Quit: Ping timeout (120 seconds)]
brunoerg has quit [Remote host closed the connection]
jamesob has joined #bitcoin-core-dev
AaronvanW has quit [Ping timeout: 240 seconds]
Kaizen_Kintsugi_ has quit [Remote host closed the connection]
Kaizen_Kintsugi_ has joined #bitcoin-core-dev
brunoerg has joined #bitcoin-core-dev
brunoerg has quit [Ping timeout: 260 seconds]
nanotube has quit [Ping timeout: 260 seconds]
willcl_ark has quit [Quit: Reconnecting]
willcl_ark has joined #bitcoin-core-dev
Talkless has joined #bitcoin-core-dev
brunoerg has joined #bitcoin-core-dev
brunoerg has quit [Ping timeout: 260 seconds]
<laanwj> sipa: on linux, at least with gcc 11.2 i'm using locally, sp-relative accesses appear to use vmovdqu, it doesn't align the stack but uses the correct alignment assumptions
<sipa> dqu or dqa?
<laanwj> wait, that was actually a clang build
<laanwj> dqu
<laanwj> it doesn't assume the stack is aligned to 32 bytes, which makes sense
<sipa> oh, i misread what you said; i see
AaronvanW has joined #bitcoin-core-dev
<laanwj> it uses the aligned variant only to move between registers (doubt it makes a difference which one is used there?) and accessing constant data it knows to be aligned
<laanwj> i don't get it really, it could do exactly the same on windows and it'd be correct?
<sipa> right
<sipa> i could understand if it uses the same codegen, but the alignment assumptions are different between the teo
<sipa> but here it seems it's actually different code being generated?
<laanwj> i think it's just the alignment assumptions that are different
<laanwj> i'd assume so, i'm not comparing against the same version of gcc right now
AaronvanW has quit [Ping timeout: 260 seconds]
<laanwj> what i don't get what the alignment assumptions made by gcc on windows even are; why would it *ever* think the stack is 32-byte aligned? as i see it could just err on the safe side, but it doesn't
<laanwj> that's what #24736 does but it removes all reasoning about alignment at all
<gribble> https://github.com/bitcoin/bitcoin/issues/24736 | guix: fix vmov alignment issues with gcc 10.3.0 & mingw-w64 by fanquake · Pull Request #24736 · bitcoin/bitcoin · GitHub
<laanwj> which is okay as a workaround
<laanwj> but i guess to patch upstream, one'd have to be more precise
<fanquake> btw there is even more discusion in the issue now: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54412
<laanwj> ah, this comment states exactly what i mean: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54412#c36
SpellChecker has quit [Quit: bye]
SpellChecker has joined #bitcoin-core-dev
brunoerg has joined #bitcoin-core-dev
brunoerg has quit [Ping timeout: 260 seconds]
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
Talkless has quit [Quit: Konversation terminated!]
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
brunoerg has joined #bitcoin-core-dev
brunoerg has quit [Ping timeout: 240 seconds]
AaronvanW has joined #bitcoin-core-dev
AaronvanW has quit [Ping timeout: 260 seconds]
Guyver2 has quit [Quit: Going offline, see ya! (www.adiirc.com)]
bomb-on has quit [Quit: aллилѹіа!]
bitdex has quit [Ping timeout: 240 seconds]
bitdex has joined #bitcoin-core-dev
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
brunoerg has joined #bitcoin-core-dev
<cfields> laanwj: cunningham's law strikes again, heh.
brunoerg has quit [Ping timeout: 240 seconds]
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
brunoerg has joined #bitcoin-core-dev
shesek__ has quit [Remote host closed the connection]
shesek__ has joined #bitcoin-core-dev
brunoerg has quit [Ping timeout: 260 seconds]
AaronvanW has joined #bitcoin-core-dev