Please use GitHub pull requests for new patches. Avoid migrating existing patches. Phabricator shutdown timeline
Changeset View
Changeset View
Standalone View
Standalone View
lib/Target/ARM/ARMInstrFormats.td
Show First 20 Lines • Show All 392 Lines • ▼ Show 20 Lines | |||||
// PseudoInst that's Thumb-mode only. | // PseudoInst that's Thumb-mode only. | ||||
class tPseudoInst<dag oops, dag iops, int sz, InstrItinClass itin, | class tPseudoInst<dag oops, dag iops, int sz, InstrItinClass itin, | ||||
list<dag> pattern> | list<dag> pattern> | ||||
: PseudoInst<oops, iops, itin, pattern> { | : PseudoInst<oops, iops, itin, pattern> { | ||||
let Size = sz; | let Size = sz; | ||||
list<Predicate> Predicates = [IsThumb]; | list<Predicate> Predicates = [IsThumb]; | ||||
} | } | ||||
// PseudoInst that's in ARMv8-M baseline (Somewhere between Thumb and Thumb2) | |||||
class t2basePseudoInst<dag oops, dag iops, int sz, InstrItinClass itin, | |||||
list<dag> pattern> | |||||
: PseudoInst<oops, iops, itin, pattern> { | |||||
let Size = sz; | |||||
list<Predicate> Predicates = [IsThumb,HasV8MBaseline]; | |||||
} | |||||
// PseudoInst that's Thumb2-mode only. | // PseudoInst that's Thumb2-mode only. | ||||
class t2PseudoInst<dag oops, dag iops, int sz, InstrItinClass itin, | class t2PseudoInst<dag oops, dag iops, int sz, InstrItinClass itin, | ||||
list<dag> pattern> | list<dag> pattern> | ||||
: PseudoInst<oops, iops, itin, pattern> { | : PseudoInst<oops, iops, itin, pattern> { | ||||
let Size = sz; | let Size = sz; | ||||
list<Predicate> Predicates = [IsThumb2]; | list<Predicate> Predicates = [IsThumb2]; | ||||
} | } | ||||
▲ Show 20 Lines • Show All 2,115 Lines • Show Last 20 Lines |