On Tue, 2014-01-14 at 22:59 -0800, Craig Topper wrote:> I started trying to fix this tonight but it's pretty nasty to fix. > I'll try to make another go at it later this week.Much of it seems fixed already; what's left to fix? The segment prefix override? Does that mean we get to fix disassembly of '0x65 0xa4' while we're at it? (Although we can't even *assemble* that one, I note.) Any comments on the patches I posted on Monday to fix various 16-bit disasm issues? -- dwmw2 -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/x-pkcs7-signature Size: 5745 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140115/595a5c6f/attachment.bin>
To fix it we need to change offset8/offset16/etc to have two suboperands and update the printer to understand that. Also update the disassembler to add the segment to the MCInst when its creating it. When I did these two things the MCCodeEmitter broke because it tried to interpret the extra operand as an immediate. I think I probably need to change the form from RawFrm to something new that I can teach the MCCodeEmitter to handle correctly. I haven't looked at the patches yet. I was out of town most of last week and trying to get caught back up. On Tue, Jan 14, 2014 at 11:11 PM, David Woodhouse <dwmw2 at infradead.org>wrote:> On Tue, 2014-01-14 at 22:59 -0800, Craig Topper wrote: > > I started trying to fix this tonight but it's pretty nasty to fix. > > I'll try to make another go at it later this week. > > Much of it seems fixed already; what's left to fix? The segment prefix > override? Does that mean we get to fix disassembly of '0x65 0xa4' while > we're at it? (Although we can't even *assemble* that one, I note.) > > Any comments on the patches I posted on Monday to fix various 16-bit > disasm issues? > > -- > dwmw2 > >-- ~Craig -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140115/c260006e/attachment.html>
I believe I have now fixed the 0x64 0xa1 0x00 0x00 0x00 0x00 bug in r199364. On Wed, Jan 15, 2014 at 10:53 AM, Craig Topper <craig.topper at gmail.com>wrote:> To fix it we need to change offset8/offset16/etc to have two suboperands > and update the printer to understand that. Also update the disassembler to > add the segment to the MCInst when its creating it. When I did these two > things the MCCodeEmitter broke because it tried to interpret the extra > operand as an immediate. I think I probably need to change the form from > RawFrm to something new that I can teach the MCCodeEmitter to handle > correctly. > > I haven't looked at the patches yet. I was out of town most of last week > and trying to get caught back up. > > > On Tue, Jan 14, 2014 at 11:11 PM, David Woodhouse <dwmw2 at infradead.org>wrote: > >> On Tue, 2014-01-14 at 22:59 -0800, Craig Topper wrote: >> > I started trying to fix this tonight but it's pretty nasty to fix. >> > I'll try to make another go at it later this week. >> >> Much of it seems fixed already; what's left to fix? The segment prefix >> override? Does that mean we get to fix disassembly of '0x65 0xa4' while >> we're at it? (Although we can't even *assemble* that one, I note.) >> >> Any comments on the patches I posted on Monday to fix various 16-bit >> disasm issues? >> >> -- >> dwmw2 >> >> > > > -- > ~Craig >-- ~Craig -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140115/40b33759/attachment.html>