IRC channel logs
2024-02-08.log
back to list of logs
<oriansj>and it works on amd64 when built by tcc/gcc/clang <Googulator>on amd64, 0xFFFFFFFF gets compiled to 0xFFFFFFFFFFFFFFFF <Googulator>it wants to sign-extend everything that has the uppermost bit set <oriansj>so you only want 0xFFFFFFFF on 64bit systems <Googulator>yes, because I need to check 32-bit fields against an "all-ones" condition <stikonas>Googulator: you shouldn't use 32-bit numbers in M2 <stikonas>generally anything over 31-bit would behave strange <oriansj>make a function which returns uint32_t and inside of it put return ((0x7FFFFFFF << 1) | 0x1); <stikonas>well, any arithmetic operation would do... <Googulator>& then instead of writing 0xFFFFFFFF, write (0x7FFFFFFF & BIT31) <stikonas>as I had to use a lot of 32-bit numbers... <stikonas>and also this syscall stuff with LSTAR register <Googulator>meanwhile, successful Linux tar.xz extraction in Fiwix with the latest iteration! <Googulator>I also tested extracting a handcrafted mes-0.25.tar.xz in builder-hex0 - it works :) <oriansj>Googulator: (0x7FFFFFFF & BIT31) would just result in 0; you want (0x7FFFFFFF | BIT31) <oriansj>sounds like a solid size reduction across the board. <oriansj>well assuming we strip out M2-Planet tests and don't include the 26+MB .git repo; I don't think we can get stage0-posix+builder hex0 under 1.44MB <oriansj>unless we limit the reduced images to only the built source code of a single architecture. <oriansj>and there will be 15.8MB of build artifacts before the final 1.4MB of final binaries produced. <oriansj>oh and I finally moved the web_ide out of stage0; <oriansj>it'll save a bit of trouble when more RISC-V 64bit changes show up <Googulator>prob[] is an array of uint32s, ttt is also an uint32 <Googulator>if this is actually a 64-bit copy instead of a 32-bit one, that would cause some serious corruption <stikonas>stage0 and bootstrap was just mentioned on #mrustc :) <oriansj>I guess ekaitz talk was heard by them <Googulator>wrap.c still doesn't build even with everything updated to the newest <Guest26>hi, why I'm getting rm: cannot lstat `*/Makefile.in': No such file or directory <Guest26>rm: cannot lstat `*/*/Makefile.in': No such file or directory <fossy>sorry for all the questions - what is your build method (chroot/bwrap/qemu/bare metal)?, what commit are you building from? <fossy>anything special about your setup <Guest26>im building with chroot method with rootfs.py script <fossy>could you check your sha256sum of automake-1.6.3.tar.bz2 in the distfiles/ directory? <fossy>also your ./rootfs.py command would probably be helpful too <fossy>theres a possibility it was some strange transient issue and if you re-ran it wouldn't occur again <fossy>unfortunately i don't have access to a WSL system, but i'm pretty sure Googulator has a fix in the works <matrix_bridge><Andrius Štikonas> Guest26: are you Guest25 from yesterday? If so I replied to you that I am working on 64 bit bootstrap too... <fossy>also, unfortunate bare metal bootstrap news. neither of my two (veryish) old laptops succeed on bare metal (one is core2duo era, other i think is pentium m era) <fossy>pentium m era gets up to make_fiwix_initrd and hangs, core2duo era crashes in the middle of srcfs right at the beginning <fossy>need to investigate further, but is going to be a trek <fossy>i suspect the pentium m era might not have enough ram <fossy>and so make_fiwix_initrd is trying to write to non existant memory <Guest26>I am on linux from scratch based linux <fossy>my core2duo laptop crashes on reading automake-1.9.6.tar.bz2 for srcfs... around 32MiB in? <fossy>not sure of any logical cause <fossy>i'm not sure what we call the step <fossy>the one where it does "src" "filename" "src" "filename" .... <matrix_bridge><Andrius Štikonas> Oh, and were you able to get anywhere with stage0-uefi? <fossy>not yet, i have a few ideas floating around in my head, just need to give them a go <matrix_bridge><Andrius Štikonas> I think it's almost at the POSIX level for x86_64... <matrix_bridge><Andrius Štikonas> Well of course we still don't have a working tcc there... <oriansj>Googulator: your pull was merged and I can confirm all of my unxz tests pass now for amd64; great job ^_^ and thank you so much. <Googulator>A failure 32MiB into srcfs sounds like BIOS not properly implementing Int 13h extended reads <oriansj>Googulator: I can confirm your wrap.c issue (I forgot to push to github >.<) <oriansj>will update stage0-posix later today with the new checksums. <matrix_bridge><Andrius Štikonas> oriansj: also please update changelog when you update stage0-posix <Googulator>oriansj: would it be possible to get a commit in the stage0-posix repository with submodules updated to the current (working) ones with xz? <Googulator>I would need it to merge xz support into live-bootstrap, which pulls stage0-posix as a submodule. <oriansj>Googulator: well yes, I am doing that right now <oriansj>(more exactly I am verifying the checksums for all architectures and will then be doing a commit <stikonas>just tested that acessing arrays using reverse notation doesn't work in M2-Planet <fossy>stikonas: i've never seen that syntax before, lol. is that the same as a[1]? why would one ever use that? <stikonas>fossy: yeah, I haven't seen it before either <stikonas>I guess historically compilers considered it as *(a + 1) <stikonas>so it "accidentally" worked and ended up in standard