On Jun 18, 2007, at 6:25 PM, Evan Cheng wrote:
> Log message:
>
> Replace TargetInstrInfo::CanBeDuplicated() with a M_NOT_DUPLICABLE
> bit.
>
Thanks Evan!
-Chris
___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman
Geeze. I was sure I would've been yelled at had I made it into a
targetinstrinfo bit. :-)
Really didn't want to go with either approach. But I don't see a
better alternative.
Evan
On Jun 15, 2007, at 2:37 PM, Chris Lattner wrote:
> On Jun 15, 2007, at 2:15 PM, Evan Cheng wrote:
>> Instructi
On Jun 15, 2007, at 2:15 PM, Evan Cheng wrote:
> Instructions with unique labels or embedded jumptables cannot be
> duplicated during ifcvt.
Please turn this into a targetinstrinfo bit. Virtual methods should
only be used for properties whose behavior is a property of the
*operands* of the
On May 16, 2007, at 1:50 PM, Chris Lattner wrote:
>>> Does that mean it can be predicated and the predicate is not set to
>>> always? What client do you expect for this?
>>
>> Right. The only potential client is the if-converter. If anything is
>> already predicated on a non-always predicate bef
>> Does that mean it can be predicated and the predicate is not set to
>> always? What client do you expect for this?
>
> Right. The only potential client is the if-converter. If anything is
> already predicated on a non-always predicate before if-conversion, it
> needs to know.
Random thought, p
On May 16, 2007, at 11:42 AM, Chris Lattner wrote:
>>> Yes, I think this should be the distinction between M_PREDICATED
>>> (the
>>> instr already has a predicate field, but may be set to 'always') vs
>>> M_PREDICABLE (the instr may or may not have a predicate field, but
>>> PredicateInstructio
>> Yes, I think this should be the distinction between M_PREDICATED (the
>> instr already has a predicate field, but may be set to 'always') vs
>> M_PREDICABLE (the instr may or may not have a predicate field, but
>> PredicateInstruction can change it into one that does).
>
> I dunno if that's the
On May 16, 2007, at 11:21 AM, Evan Cheng wrote:
>> I realized this morning what I really meant :). I think that
>> isPredicable should be a non-virtual function that checks TID-
>>> Flags&M_PREDICATED (Actually, it might make sense to introduce a
>> new M_PREDICABLE flag). Further, the default
On May 16, 2007, at 10:09 AM, Chris Lattner wrote:
> On May 16, 2007, at 1:18 AM, Evan Cheng wrote:
>>> But even then I am not sure if that eliminate the need to have a
>>> virtual function isPredicatable. Conditional branches probably would
>>> require special handling. Also, while it isn't poss
On May 16, 2007, at 10:06 AM, Chris Lattner wrote:
> On May 16, 2007, at 1:02 AM, Evan Cheng wrote:
>>> I don't think there is any reason for this to be virtual and target-
>>> specific. In particular, can you please model B/tB the same way PPC
>>> handles branches (where an uncond branch is jus
On May 16, 2007, at 1:18 AM, Evan Cheng wrote:
>> But even then I am not sure if that eliminate the need to have a
>> virtual function isPredicatable. Conditional branches probably would
>> require special handling. Also, while it isn't possible now, it's
>> conceivable some instruction predicate f
On May 16, 2007, at 1:02 AM, Evan Cheng wrote:
>> I don't think there is any reason for this to be virtual and target-
>> specific. In particular, can you please model B/tB the same way PPC
>> handles branches (where an uncond branch is just a conditional branch
>> where the condition is set to 'a
On May 16, 2007, at 1:02 AM, Evan Cheng wrote:
>
> On May 15, 2007, at 11:50 PM, Chris Lattner wrote:
>>
>> I don't think there is any reason for this to be virtual and target-
>> specific. In particular, can you please model B/tB the same way PPC
>> handles branches (where an uncond branch is j
On May 15, 2007, at 11:50 PM, Chris Lattner wrote:
>> Hooks for predication support.
>
> yay!
>
>> +bool ARMInstrInfo::isPredicatable(MachineInstr *MI) const {
>> + const TargetInstrDescriptor *TID = MI->getInstrDescriptor();
>> + if (TID->Flags & M_PREDICATED)
>> +return true;
>> +
>> + u
> Hooks for predication support.
yay!
> +bool ARMInstrInfo::isPredicatable(MachineInstr *MI) const {
> + const TargetInstrDescriptor *TID = MI->getInstrDescriptor();
> + if (TID->Flags & M_PREDICATED)
> +return true;
> +
> + unsigned Opc = MI->getOpcode();
> + return Opc == ARM::B || Opc
15 matches
Mail list logo