[llvm-commits] [Patch] Make sure isIdenticalTo takes into account the machine mem operands

Andrew Trick atrick at apple.com
Fri Sep 21 19:35:31 PDT 2012


On Sep 20, 2012, at 2:18 PM, Hal Finkel <hfinkel at anl.gov> wrote:

> Micah,
> 
> Can you please explain the motivation for this? The memory operands are
> only informative (not actually directly encoded), right? Is only
> checking the sizes sufficient?

My understanding is that memory operands should not affect the instruction encoding. If two otherwise identical instructions have different memory sizes, then it is a bug in the machine IR. It's ok if one of the (identical) instructions has dropped memoperands, but their sizes should not conflict.

We really should be verifying at code emission that any remaining memoperand sizes match the encoding, but we don't have a target hook for that yet.

-Andy

> On Thu, 20 Sep 2012 15:19:53 +0000
> "Villmow, Micah" <Micah.Villmow at amd.com> wrote:
> 
>> Ping!
>> 
>> From: Villmow, Micah
>> Sent: Tuesday, September 18, 2012 10:35 AM
>> To: Villmow, Micah; llvm-commits at cs.uiuc.edu
>> Subject: RE: [Patch] Make sure isIdenticalTo takes into account the
>> machine mem operands
>> 
>> Ping!
>> 
>> From:
>> llvm-commits-bounces at cs.uiuc.edu<mailto:llvm-commits-bounces at cs.uiuc.edu>
>> [mailto:llvm-commits-bounces at cs.uiuc.edu] On Behalf Of Villmow, Micah
>> Sent: Thursday, September 06, 2012 10:03 AM To:
>> llvm-commits at cs.uiuc.edu<mailto:llvm-commits at cs.uiuc.edu> Subject:
>> [llvm-commits] [Patch] Make sure isIdenticalTo takes into account the
>> machine mem operands
>> 
>> In some cases, MI->isIdenticalTo can return true when everything is
>> equal but the mem operands. This makes sure that the machine mem
>> operands are taken into account when checking if a MachineInstruction
>> is equal to another.
>> 
>> Thanks,
>> Micah
> 
> 
> 
> -- 
> Hal Finkel
> Postdoctoral Appointee
> Leadership Computing Facility
> Argonne National Laboratory
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits




More information about the llvm-commits mailing list