Lines Matching refs:target
528 void AssemblerX64::Callq(Label *target)
530 if (target->IsBound()) {
531 int32_t offset = static_cast<int32_t>(target->GetPos() - GetCurrentPosition());
538 if (target->IsLinked()) {
539 emitPos = static_cast<int32_t>(target->GetLinkedPos());
542 target->LinkTo(pos + 1);
554 void AssemblerX64::Jmp(Label *target, Distance distance)
556 if (target->IsBound()) {
557 int32_t offset = static_cast<int32_t>(target->GetPos() - GetCurrentPosition());
565 if (target->IsLinkedNear()) {
566 emitPos = static_cast<int32_t>(target->GetLinkedNearPos() - pos);
569 target->LinkNearPos(pos + 1);
575 if (target->IsLinked()) {
576 emitPos = static_cast<int32_t>(target->GetLinkedPos());
579 target->LinkTo(pos + 1);
608 void AssemblerX64::Ja(Label *target, Distance distance)
610 if (target->IsBound()) {
611 int32_t offset = static_cast<int32_t>(target->GetPos() - GetCurrentPosition());
618 if (target->IsLinkedNear()) {
619 emitPos = static_cast<int32_t>(target->GetLinkedNearPos() - pos);
622 target->LinkNearPos(pos + 1);
628 if (target->IsLinked()) {
629 emitPos = static_cast<int32_t>(target->GetLinkedPos());
632 target->LinkTo(pos + 2);
640 void AssemblerX64::Jb(Label *target, Distance distance)
642 if (target->IsBound()) {
643 int32_t offset = static_cast<int32_t>(target->GetPos() - GetCurrentPosition());
650 if (target->IsLinkedNear()) {
651 emitPos = static_cast<int32_t>(target->GetLinkedNearPos() - pos);
654 target->LinkNearPos(pos + 1);
660 if (target->IsLinked()) {
661 emitPos = static_cast<int32_t>(target->GetLinkedPos());
664 target->LinkTo(pos + 2);
671 void AssemblerX64::Jz(Label *target, Distance distance)
673 if (target->IsBound()) {
674 int32_t offset = static_cast<int32_t>(target->GetPos() - GetCurrentPosition());
681 if (target->IsLinkedNear()) {
682 emitPos = static_cast<int32_t>(target->GetLinkedNearPos() - pos);
685 target->LinkNearPos(pos + 1);
691 if (target->IsLinked()) {
692 emitPos = static_cast<int32_t>(target->GetLinkedPos());
695 target->LinkTo(pos + 2);
703 void AssemblerX64::Je(Label *target, Distance distance)
705 if (target->IsBound()) {
706 int32_t offset = static_cast<int32_t>(target->GetPos() - GetCurrentPosition());
713 if (target->IsLinkedNear()) {
714 emitPos = static_cast<int32_t>(target->GetLinkedNearPos() - pos);
717 target->LinkNearPos(pos + 1);
723 if (target->IsLinked()) {
724 emitPos = static_cast<int32_t>(target->GetLinkedPos());
727 target->LinkTo(pos + 2);
735 void AssemblerX64::Bind(Label *target)
738 ASSERT(!target->IsBound());
740 if (target->IsLinked()) {
741 uint32_t linkPos = target->GetLinkedPos();
750 if (target->IsLinkedNear()) {
751 uint32_t linkPos = target->GetLinkedNearPos();
762 target->UnlinkNearPos();
765 target->BindTo(pos);
915 void AssemblerX64::Jne(Label *target, Distance distance)
917 if (target->IsBound()) {
918 int32_t offset = static_cast<int32_t>(target->GetPos() - GetCurrentPosition());
925 if (target->IsLinkedNear()) {
926 emitPos = static_cast<int32_t>(target->GetLinkedNearPos() - pos);
929 target->LinkNearPos(pos + 1);
935 if (target->IsLinked()) {
936 emitPos = static_cast<int32_t>(target->GetLinkedPos());
939 target->LinkTo(pos + 2);
955 void AssemblerX64::Jbe(Label *target, Distance distance)
957 if (target->IsBound()) {
958 int32_t offset = static_cast<int32_t>(target->GetPos() - GetCurrentPosition());
965 if (target->IsLinkedNear()) {
966 emitPos = static_cast<int32_t>(target->GetLinkedNearPos() - pos);
969 target->LinkNearPos(pos + 1);
975 if (target->IsLinked()) {
976 emitPos = static_cast<int32_t>(target->GetLinkedPos());
979 target->LinkTo(pos + 2);
1119 void AssemblerX64::Jnz(Label *target, Distance distance)
1121 if (target->IsBound()) {
1122 int32_t offset = static_cast<int32_t>(target->GetPos() - GetCurrentPosition());
1129 if (target->IsLinkedNear()) {
1130 emitPos = static_cast<int32_t>(target->GetLinkedNearPos() - pos);
1133 target->LinkNearPos(pos + 1);
1139 if (target->IsLinked()) {
1140 emitPos = static_cast<int32_t>(target->GetLinkedPos());
1143 target->LinkTo(pos + 2);
1151 void AssemblerX64::Jle(Label *target, Distance distance)
1153 if (target->IsBound()) {
1154 int32_t offset = static_cast<int32_t>(target->GetPos() - GetCurrentPosition());
1161 if (target->IsLinkedNear()) {
1162 emitPos = static_cast<int32_t>(target->GetLinkedNearPos() - pos);
1165 target->LinkNearPos(pos + 1);
1171 if (target->IsLinked()) {
1172 emitPos = static_cast<int32_t>(target->GetLinkedPos());
1175 target->LinkTo(pos + 2);
1183 void AssemblerX64::Jae(Label *target, Distance distance)
1185 if (target->IsBound()) {
1186 int32_t offset = static_cast<int32_t>(target->GetPos() - GetCurrentPosition());
1193 if (target->IsLinkedNear()) {
1194 emitPos = static_cast<int32_t>(target->GetLinkedNearPos() - pos);
1197 target->LinkNearPos(pos + 1);
1203 if (target->IsLinked()) {
1204 emitPos = static_cast<int32_t>(target->GetLinkedPos());
1207 target->LinkTo(pos + 2);
1215 void AssemblerX64::Jg(Label *target, Distance distance)
1217 if (target->IsBound()) {
1218 int32_t offset = static_cast<int32_t>(target->GetPos() - GetCurrentPosition());
1225 if (target->IsLinkedNear()) {
1226 emitPos = static_cast<int32_t>(target->GetLinkedNearPos() - pos);
1229 target->LinkNearPos(pos + 1);
1235 if (target->IsLinked()) {
1236 emitPos = static_cast<int32_t>(target->GetLinkedPos());
1239 target->LinkTo(pos + 2);
1247 void AssemblerX64::Jge(Label *target, Distance distance)
1249 if (target->IsBound()) {
1250 int32_t offset = static_cast<int32_t>(target->GetPos() - GetCurrentPosition());
1257 if (target->IsLinkedNear()) {
1258 emitPos = static_cast<int32_t>(target->GetLinkedNearPos() - pos);
1261 target->LinkNearPos(pos + 1);
1267 if (target->IsLinked()) {
1268 emitPos = static_cast<int32_t>(target->GetLinkedPos());
1271 target->LinkTo(pos + 2);
1382 void AssemblerX64::Jnb(Label *target, Distance distance)
1384 if (target->IsBound()) {
1385 int32_t offset = static_cast<int32_t>(target->GetPos() - GetCurrentPosition());
1392 if (target->IsLinkedNear()) {
1393 emitPos = static_cast<int32_t>(target->GetLinkedNearPos() - pos);
1396 target->LinkNearPos(pos + 1);
1402 if (target->IsLinked()) {
1403 emitPos = static_cast<int32_t>(target->GetLinkedPos());
1406 target->LinkTo(pos + 2);