[Development] QTBUG-111740 - MIPS DSP or DSPv2 verification needed
Allan Sandfeld Jensen
kde at carewolf.com
Mon Mar 6 18:08:39 CET 2023
On Montag, 6. März 2023 17:51:04 CET Lisandro Damián Nicanor Pérez Meyer
wrote:
> El domingo, 5 de marzo de 2023 14:36:55 -03 Thiago Macieira escribió:
> > https://bugreports.qt.io/browse/QTBUG-111740
> >
> > The reporter is saying that the QString::fromLatin1 function generates
> > corrupt translation when the 8-bit char input is not aligned to 2 bytes
> > (which it doesn't have to be, it's char).
> >
> > I don't expect anyone to be able to review and fix the MIPS DSP / DSPv2
> > code, so the only option here is to disable and delete it, making MIPS
> > use the compiler-generated translation only. But I'd like to get a
> > confirmation from someone who can. I think I see a QEMU MIPS stage in
> > COIN, but please note that DSP and DSPv2 code might be different, so both
> > need to be tested.
> >
> > In 2 weeks time, I'll disable the DSP version that didn't get a fix or
> > "cannot reproduce".
>
> Is this easily testable? I have access to MIPS porterbox in Debian.
If it has the right extension. I think I managed to set that up once in QEMU
too, but it was a long time ago.
Perhaps log output fromLatin1 output. It sounds like even an ascii string
should do, and then call it on various offsets. If the bug report is right,
the uneven offsets should have a noise in every 8th character.
char *string= "abcdefghijklmnopqrstuvxyzabcdefghijklmnopqrstuvxyz";
qWarning() << QString::fromLatin1(string + 0);
qWarning() << QString::fromLatin1(string + 1);
qWarning() << QString::fromLatin1(string + 2);
qWarning() << QString::fromLatin1(string + 3);
qWarning() << QString::fromLatin1(string + 4);
qWarning() << QString::fromLatin1(string + 5);
qWarning() << QString::fromLatin1(string + 6);
qWarning() << QString::fromLatin1(string + 7);
What is worse is that is seems to be the non-DSPr2 code path, so you need a
machine with only DSPr1.
Best regards
Allan
More information about the Development
mailing list