Re: [PATCH] Revert "Move popcount and hamdist back from z14 to z13 after needed edits."
I committed your patch (while also impersonating you). -- Torbjörn Please encrypt, key id 0xC8601622 ___ gmp-devel mailing list gmp-devel@gmplib.org https://gmplib.org/mailman/listinfo/gmp-devel
Re: [PATCH] Revert "Move popcount and hamdist back from z14 to z13 after needed edits."
Stefan Liebler writes: Thanks for that. In the meantime, gmp 6.3.0 + this patch should be used. Do you have plans for 6.3.1? We tend to make point releases. For me "qemu-system-s390x --cpu help" at least lists some z13 models, but to be honest, I don't use it. I have to check. Yes, that list I get. But passing almost any of the suggested options causes an error message. (I think -cpu z990 was the only one with which I had success. But no, I haven't tried every listed option.) I stick to "user emulation" with qemu these days, as I cannot afford the electricity needed for full system emulation. -- Torbjörn Please encrypt, key id 0xC8601622 ___ gmp-devel mailing list gmp-devel@gmplib.org https://gmplib.org/mailman/listinfo/gmp-devel
Re: [PATCH] Revert "Move popcount and hamdist back from z14 to z13 after needed edits."
On 03.08.23 16:03, Niels Möller wrote: > Stefan Liebler writes: > >> Unfortunately not only the extended mnemonics are not available with z13, >> but also vpopct M3=1-3 is reserved. Thus you'll get an illegal-instruction >> if run on z13 as vector enhancement facility 1 (introduced with z14) is >> not available. > > Is there some pseudo op that can be used to tell the assembler that the > file targets z13, and get errors at compile time for unavailable instructions? > > Regards, > /Niels > Of course the gcc --march=XYZ flag is passed to the assembler, but there is also the .machine XYZ. You could use it like this: .machine push .machine "z13" # z13-instruction .machine pop But in this case, it does not cause an error as on z13 vpopct with M3 flag is available. Unfortunately the assembler does not check the value of M3-flag. Using vpopctg with --march=z13 will cause an error. ___ gmp-devel mailing list gmp-devel@gmplib.org https://gmplib.org/mailman/listinfo/gmp-devel
Re: [PATCH] Revert "Move popcount and hamdist back from z14 to z13 after needed edits."
On 03.08.23 16:06, Torbjörn Granlund wrote: > Stefan Liebler writes: > > Unfortunately not only the extended mnemonics are not available with z13, > but also vpopct M3=1-3 is reserved. Thus you'll get an illegal-instruction > if run on z13 as vector enhancement facility 1 (introduced with z14) is > not available. > > Ah, darn. This will need to be fixed in a 6.3.1 when the dust settles. Thanks for that. In the meantime, gmp 6.3.0 + this patch should be used. Do you have plans for 6.3.1? > > I only have a z15 to run tests on. I don't have a reliable way of > telling what instructions run on a particular implementation. An > instruction table with checkmarks per implementation would avoid this > sort of problems. IBM should be able provide that. Indeed the best list I know is /opcodes/s390-opc.txt. But also see below. The POP also contains a small hint regarding the M3-reserves, but I've overseen it. > > A simple test I have used is to see what instructions the assembler > accepts under various command-line options. That depends on the GNU > binutils developers to have made no mistake. In this case, it does not cause an error as on z13 vpopct with M3 flag is available. Unfortunately the assembler does not check the value of M3-flag. Using vpopctg with --march=z13 will cause an error. > > I also tried to make qemu help by passing -cpu XXX, as that has proven > itself historically for other evolving ISAs. The GMP test setup then > can autotest things for several architectures, quickly triggering any > incorrect instruction availability assumptions. Unfortunately for > qemu-s390x, all I get from passing say "-cpu z13" is an arm long > non-parsable error message. I have had no luck with any -cpu argument > whatsoever. > For me "qemu-system-s390x --cpu help" at least lists some z13 models, but to be honest, I don't use it. I have to check. ___ gmp-devel mailing list gmp-devel@gmplib.org https://gmplib.org/mailman/listinfo/gmp-devel
Re: [PATCH] Revert "Move popcount and hamdist back from z14 to z13 after needed edits."
Stefan Liebler writes: Unfortunately not only the extended mnemonics are not available with z13, but also vpopct M3=1-3 is reserved. Thus you'll get an illegal-instruction if run on z13 as vector enhancement facility 1 (introduced with z14) is not available. Ah, darn. This will need to be fixed in a 6.3.1 when the dust settles. I only have a z15 to run tests on. I don't have a reliable way of telling what instructions run on a particular implementation. An instruction table with checkmarks per implementation would avoid this sort of problems. IBM should be able provide that. A simple test I have used is to see what instructions the assembler accepts under various command-line options. That depends on the GNU binutils developers to have made no mistake. I also tried to make qemu help by passing -cpu XXX, as that has proven itself historically for other evolving ISAs. The GMP test setup then can autotest things for several architectures, quickly triggering any incorrect instruction availability assumptions. Unfortunately for qemu-s390x, all I get from passing say "-cpu z13" is an arm long non-parsable error message. I have had no luck with any -cpu argument whatsoever. -- Torbjörn Please encrypt, key id 0xC8601622 ___ gmp-devel mailing list gmp-devel@gmplib.org https://gmplib.org/mailman/listinfo/gmp-devel
Re: [PATCH] Revert "Move popcount and hamdist back from z14 to z13 after needed edits."
Stefan Liebler writes: > Unfortunately not only the extended mnemonics are not available with z13, > but also vpopct M3=1-3 is reserved. Thus you'll get an illegal-instruction > if run on z13 as vector enhancement facility 1 (introduced with z14) is > not available. Is there some pseudo op that can be used to tell the assembler that the file targets z13, and get errors at compile time for unavailable instructions? Regards, /Niels -- Niels Möller. PGP key CB4962D070D77D7FCB8BA36271D8F1FF368C6677. Internet email is subject to wholesale government surveillance. ___ gmp-devel mailing list gmp-devel@gmplib.org https://gmplib.org/mailman/listinfo/gmp-devel