Lines Matching defs:wback

2467         if wback then R[n] = offset_addr;
2484 bool wback;
2496 wback = (BitIsClear(opcode, 24) || BitIsSet(opcode, 21));
2498 if (wback && ((Rn == 15) || (Rn == Rt)))
2538 if (wback) {
3915 if wback && registers<n> == '0' then R[n] = R[n] + 4 * BitCount (registers);
3916 if wback && registers<n> == '1' then R[n] = bits(32) UNKNOWN; // Only possible for encoding A1
3924 bool wback;
3928 // n = UInt(Rn); registers = '00000000':register_list; wback =
3933 wback = BitIsClear(registers, n);
3940 // n = UInt(Rn); registers = P:M:'0':register_list; wback = (W == '1');
3944 wback = BitIsSet(opcode, 21);
3957 // if wback && registers<n> == '1' then UNPREDICTABLE;
3958 if (wback && BitIsSet(registers, n))
3965 wback = BitIsSet(opcode, 21);
3989 if (wback && (n == 13)) // Pop Instruction
4022 if (wback && BitIsClear(registers, n)) {
4032 if (wback && BitIsSet(registers, n))
4059 if wback && registers<n> == '0' then R[n] = R[n] - 4*BitCount(registers);
4060 if wback && registers<n> == '1' then R[n] = bits(32) UNKNOWN;
4068 bool wback;
4074 // n = UInt(Rn); registers = register_list; wback = (W == '1');
4077 wback = BitIsSet(opcode, 21);
4135 // if wback && registers<n> == '0' then R[n] = R[n] - 4*BitCount(registers);
4136 if (wback && BitIsClear(registers, n)) {
4147 // if wback && registers<n> == '1' then R[n] = bits(32) UNKNOWN;
4148 if (wback && BitIsSet(registers, n))
4173 if wback && registers<n> == '0' then R[n] = R[n] - 4*BitCount(registers);
4174 if wback && registers<n> == '1' then R[n] = bits(32) UNKNOWN; // Only possible for encoding A1
4182 bool wback;
4186 // n = UInt(Rn); registers = P:M:'0':register_list; wback = (W == '1');
4190 wback = BitIsSet(opcode, 21);
4203 // if wback && registers<n> == '1' then UNPREDICTABLE;
4204 if (wback && BitIsSet(registers, n))
4210 // n = UInt(Rn); registers = register_list; wback = (W == '1');
4213 wback = BitIsSet(opcode, 21);
4271 // if wback && registers<n> == '0' then R[n] = R[n] - 4*BitCount(registers);
4272 if (wback && BitIsClear(registers, n)) {
4283 // if wback && registers<n> == '1' then R[n] = bits(32) UNKNOWN; // Only
4285 if (wback && BitIsSet(registers, n))
4309 if wback && registers<n> == '0' then R[n] = R[n] + 4*BitCount(registers);
4310 if wback && registers<n> == '1' then R[n] = bits(32) UNKNOWN;
4318 bool wback;
4322 // n = UInt(Rn); registers = register_list; wback = (W == '1');
4325 wback = BitIsSet(opcode, 21);
4383 // if wback && registers<n> == '0' then R[n] = R[n] + 4*BitCount(registers);
4384 if (wback && BitIsClear(registers, n)) {
4395 // if wback && registers<n> == '1' then R[n] = bits(32) UNKNOWN; // Only
4397 if (wback && BitIsSet(registers, n))
4416 if wback then R[n] = offset_addr;
4434 bool add, index, wback;
4440 // index = TRUE; add = TRUE; wback = FALSE
4443 wback = false;
4453 // index = TRUE; add = TRUE; wback = FALSE;
4456 wback = false;
4467 // index = TRUE; add = TRUE; wback = FALSE;
4470 wback = false;
4492 // index = (P == '1'); add = (U == '1'); wback = (W == '1');
4495 wback = BitIsSet(opcode, 8);
4497 // if (wback && n == t) || (t == 15 && InITBlock() && !LastInITBlock())
4499 if ((wback && (Rn == Rt)) ||
4520 if (wback) {
4578 if i == n && wback && i != LowestSetBit(registers) then
4586 if wback then R[n] = R[n] + 4*BitCount(registers);
4594 bool wback;
4600 // n = UInt(Rn); registers = '00000000':register_list; wback = TRUE;
4604 wback = true;
4613 // n = UInt(Rn); registers = '0':M:'0':register_list; wback = (W == '1');
4617 wback = BitIsSet(opcode, 21);
4623 // if wback && registers<n> == '1' then UNPREDICTABLE;
4624 if (wback && BitIsSet(registers, n))
4630 // n = UInt(Rn); registers = register_list; wback = (W == '1');
4633 wback = BitIsSet(opcode, 21);
4664 // if i == n && wback && i != LowestSetBit(registers) then
4665 if ((i == n) && wback && (i != lowest_set_bit))
4702 // if wback then R[n] = R[n] + 4*BitCount(registers);
4703 if (wback) {
4730 if i == n && wback && i != LowestSetBit(registers) then
4739 if wback then R[n] = R[n] - 4*BitCount(registers);
4747 bool wback;
4753 // n = UInt(Rn); registers = register_list; wback = (W == '1');
4756 wback = BitIsSet(opcode, 21);
4786 // if i == n && wback && i != LowestSetBit(registers) then
4787 if ((i == n) && wback && (i != lowest_bit_set))
4824 // if wback then R[n] = R[n] - 4*BitCount(registers);
4825 if (wback) {
4852 if i == n && wback && i != LowestSetBit(registers) then
4861 if wback then R[n] = R[n] - 4*BitCount(registers);
4869 bool wback;
4879 // n = UInt(Rn); registers = '0':M:'0':register_list; wback = (W == '1');
4883 wback = BitIsSet(opcode, 21);
4887 // if wback && registers<n> == '1' then UNPREDICTABLE;
4888 if (wback && BitIsSet(registers, n))
4899 // n = UInt(Rn); registers = register_list; wback = (W == '1');
4902 wback = BitIsSet(opcode, 21);
4934 // if i == n && wback && i != LowestSetBit(registers) then
4935 if ((i == n) && wback && (i != lowest_set_bit))
4973 // if wback then R[n] = R[n] - 4*BitCount(registers);
4974 if (wback) {
5001 if i == n && wback && i != LowestSetBit(registers) then
5010 if wback then R[n] = R[n] + 4*BitCount(registers);
5018 bool wback;
5024 // n = UInt(Rn); registers = register_list; wback = (W == '1');
5027 wback = BitIsSet(opcode, 21);
5057 // if i == n && wback && i != LowestSetBit(registers) then
5058 if ((i == n) && wback && (i != lowest_set_bit))
5096 // if wback then R[n] = R[n] + 4*BitCount(registers);
5097 if (wback) {
5125 if wback then R[n] = offset_addr;
5138 bool wback;
5147 // index = TRUE; add = TRUE; wback = FALSE;
5150 wback = false;
5159 // index = TRUE; add = TRUE; wback = FALSE;
5162 wback = false;
5175 // index = TRUE; add = TRUE; wback = FALSE;
5178 wback = false;
5199 // index = (P == '1'); add = (U == '1'); wback = (W == '1');
5202 wback = BitIsSet(opcode, 8);
5204 // if t == 15 || (wback && n == t) then UNPREDICTABLE;
5205 if ((t == 15) || (wback && (n == t)))
5261 // if wback then R[n] = offset_addr;
5262 if (wback) {
5297 if wback then R[n] = offset_addr;
5312 bool wback;
5324 // index = TRUE; add = TRUE; wback = FALSE;
5327 wback = false;
5344 // index = TRUE; add = TRUE; wback = FALSE;
5347 wback = false;
5365 // index = (P == '1'); add = (U == '1'); wback = (P == '0') ||
5369 wback = (BitIsClear(opcode, 24) || BitIsSet(opcode, 21));
5380 // if wback && (n == 15 || n == t) then UNPREDICTABLE;
5381 if (wback && ((n == 15) || (n == t)))
5458 // if wback then R[n] = offset_addr;
5459 if (wback) {
5478 if wback then R[n] = offset_addr;
5489 bool wback;
5498 // index = TRUE; add = TRUE; wback = FALSE;
5501 wback = false;
5514 // index = TRUE; add = TRUE; wback = FALSE;
5517 wback = false;
5535 // index = (P == '1'); add = (U == '1'); wback = (W == '1');
5538 wback = BitIsSet(opcode, 8);
5540 // if BadReg(t) || (wback && n == t) then UNPREDICTABLE
5541 if ((BadReg(t)) || (wback && (n == t)))
5589 // if wback then R[n] = offset_addr;
5590 if (wback) {
5618 if wback then R[n] = offset_addr;
5629 bool wback;
5643 // index = TRUE; add = TRUE; wback = FALSE;
5646 wback = false;
5663 // index = TRUE; add = TRUE; wback = FALSE;
5666 wback = false;
5685 // index = (P == '1'); add = (U == '1'); wback = (P == '0') ||
5689 wback = (BitIsClear(opcode, 24) || BitIsSet(opcode, 21));
5699 // if wback && (n == 15 || n == t) then UNPREDICTABLE;
5700 if (wback && ((n == 15) || (n == t)))
5764 // if wback then R[n] = offset_addr;
5765 if (wback) {
6334 if wback then R[n] = offset_addr;
6353 bool wback;
6366 // index = (P == '1'); add = (U == '1'); wback = (P == '0') ||
6370 wback = (BitIsClear(opcode, 24) || BitIsSet(opcode, 21));
6372 // if wback && n == t then UNPREDICTABLE;
6373 if (wback && (n == t))
6412 // if wback then R[n] = offset_addr;
6413 if (wback) {
6471 if wback then R[n] = offset_addr;
6493 bool wback;
6506 // index = TRUE; add = TRUE; wback = FALSE;
6509 wback = false;
6524 // index = TRUE; add = TRUE; wback = FALSE;
6527 wback = false;
6550 // index = (P == '1'); add = (U == '1'); wback = (P == '0') ||
6554 wback = (BitIsClear(opcode, 24) || BitIsSet(opcode, 21));
6565 // if wback && (n == 15 || n == t) then UNPREDICTABLE;
6566 if (wback && ((n == 15) || (n == t)))
6617 // if wback then R[n] = offset_addr;
6618 if (wback) {
6676 if wback then R[n] = offset_addr;
6687 bool wback;
6697 // index = TRUE; add = TRUE; wback = FALSE;
6700 wback = false;
6710 // index = TRUE; add = TRUE; wback = FALSE;
6713 wback = false;
6740 // index = (P == '1'); add = (U == '1'); wback = (W == '1');
6743 wback = BitIsSet(opcode, 8);
6753 // if BadReg(t) || (wback && n == t) then UNPREDICTABLE;
6754 if (BadReg(t) || (wback && (n == t)))
6800 // if wback then R[n] = offset_addr;
6801 if (wback) {
6905 if wback then R[n] = offset_addr;
6916 bool wback;
6928 // index = TRUE; add = TRUE; wback = FALSE;
6931 wback = false;
6944 // index = TRUE; add = TRUE; wback = FALSE;
6947 wback = false;
6973 // index = (P == '1'); add = (U == '1'); wback = (P == '0') ||
6977 wback = (BitIsClear(opcode, 24) || BitIsSet(opcode, 21));
6988 // if wback && (n == 15 || n == t) then UNPREDICTABLE;
6989 if (wback && ((n == 15) || (n == t)))
7042 // if wback then R[n] = offset_addr;
7043 if (wback) {
7066 if wback then R[n] = offset_addr;
7081 bool wback;
7091 // index = TRUE; add = TRUE; wback = FALSE;
7094 wback = false;
7106 // index = TRUE; add = TRUE; wback = FALSE;
7109 wback = false;
7130 // index = (P == '1'); add = (U == '1'); wback = (W == '1');
7133 wback = BitIsSet(opcode, 8);
7135 // if BadReg(t) || (wback && n == t) then UNPREDICTABLE;
7136 if (BadReg(t) || (wback && (n == t)))
7176 // if wback then R[n] = offset_addr;
7177 if (wback) {
7318 if wback then R[n] = offset_addr;
7333 bool wback;
7347 // index = TRUE; add = TRUE; wback = FALSE;
7350 wback = false;
7366 // index = TRUE; add = TRUE; wback = FALSE;
7369 wback = false;
7387 // index = (P == '1'); add = (U == '1'); wback = (P == '0') ||
7391 wback = (BitIsClear(opcode, 24) || BitIsSet(opcode, 21));
7401 // if wback && (n == 15 || n == t) then UNPREDICTABLE;
7402 if (wback && ((n == 15) || (n == t)))
7455 // if wback then R[n] = offset_addr;
7456 if (wback) {
7493 if wback then R[n] = offset_addr;
7504 bool wback;
7516 // index = TRUE; add = TRUE; wback = FALSE;
7519 wback = false;
7540 // index = (P == '1'); add = (U == '1'); wback = (W == '1');
7543 wback = BitIsSet(opcode, 8);
7545 // if BadReg(t) || (wback && n == t) then UNPREDICTABLE;
7549 (wback && (n == t)))
7565 // index = (P == '1'); add = (U == '1'); wback = (P == '0') ||
7569 wback = (BitIsClear(opcode, 24) || BitIsSet(opcode, 21));
7571 // if t == 15 || (wback && n == t) then UNPREDICTABLE;
7572 if ((t == 15) || (wback && (n == t)))
7618 // if wback then R[n] = offset_addr;
7619 if (wback) {
7731 if wback then R[n] = offset_addr;
7742 bool wback;
7754 // index = TRUE; add = TRUE; wback = FALSE;
7757 wback = false;
7773 // index = TRUE; add = TRUE; wback = FALSE;
7776 wback = false;
7794 // index = (P == '1'); add = (U == '1'); wback = (P == '0') ||
7798 wback = BitIsClear(opcode, 24) || BitIsSet(opcode, 21);
7808 // if wback && (n == 15 || n == t) then UNPREDICTABLE;
7809 if (wback && ((n == 15) || (n == t)))
7866 // if wback then R[n] = offset_addr;
7867 if (wback) {
7890 if wback then R[n] = offset_addr;
7905 bool wback;
7917 // index = TRUE; add = TRUE; wback = FALSE;
7920 wback = false;
7942 // index = (P == '1'); add = (U == '1'); wback = (W == '1');
7945 wback = BitIsSet(opcode, 8);
7947 // if BadReg(t) || (wback && n == t) then UNPREDICTABLE;
7948 if (BadReg(t) || (wback && (n == t)))
7963 // index = (P == '1'); add = (U == '1'); wback = (P == '0') ||
7967 wback = BitIsClear(opcode, 24) || BitIsSet(opcode, 21);
7969 // if t == 15 || (wback && n == t) then UNPREDICTABLE;
7970 if ((t == 15) || (wback && (n == t)))
8011 // if wback then R[n] = offset_addr;
8012 if (wback) {
8151 if wback then R[n] = offset_addr;
8166 bool wback;
8180 // index = TRUE; add = TRUE; wback = FALSE;
8183 wback = false;
8199 // index = TRUE; add = TRUE; wback = FALSE;
8202 wback = false;
8221 // index = (P == '1'); add = (U == '1'); wback = (P == '0') ||
8225 wback = BitIsClear(opcode, 24) || BitIsSet(opcode, 21);
8235 // if wback && (n == 15 || n == t) then UNPREDICTABLE;
8236 if (wback && ((n == 15) || (n == t)))
8289 // if wback then R[n] = offset_addr;
8290 if (wback) {
8667 if wback then R[n] = if increment then R[n]+8 else R[n]-8;
8674 bool wback;
8681 // n = UInt(Rn); wback = (W == '1'); increment = FALSE; wordhigher =
8684 wback = BitIsSet(opcode, 21);
8699 // n = UInt(Rn); wback = (W == '1'); increment = TRUE; wordhigher = FALSE;
8701 wback = BitIsSet(opcode, 21);
8719 // wback = (W == '1'); inc = (U == '1'); wordhigher = (P == U);
8720 wback = BitIsSet(opcode, 21);
8777 // if wback then R[n] = if increment then R[n]+8 else R[n]-8;
8778 if (wback) {
8791 } // if wback
10435 if wback then R[n] = offset_addr;
10446 bool wback;
10456 // index = (P == '1'); add = (U == '1'); wback = (P == '0') || (W == '1');
10459 wback = BitIsClear(opcode, 24) || BitIsSet(opcode, 21);
10465 // if wback && (n == 15 || n == t) then UNPREDICTABLE;
10466 if (wback && ((n == 15) || (n == t)))
10509 // if wback then R[n] = offset_addr;
10510 if (wback) {
10528 if wback then R[n] = offset_addr;
10539 bool wback;
10553 // index = (P == '1'); add = (U == '1'); wback = (P == '0') || (W == '1');
10556 wback = BitIsClear(opcode, 24) || BitIsSet(opcode, 21);
10558 // if wback && (n == 15 || n == t) then UNPREDICTABLE;
10559 if (wback && ((n == 15) || (n == t)))
10611 // if wback then R[n] = offset_addr;
10612 if (wback) {
10638 if wback then R[n] = offset_addr;
10650 bool wback;
10663 // index = (P == '1'); add = (U == '1'); wback = (W == '1');
10666 wback = BitIsSet(opcode, 21);
10668 // if wback && (n == t || n == t2) then UNPREDICTABLE;
10669 if (wback && ((n == t) || (n == t2)))
10690 // index = (P == '1'); add = (U == '1'); wback = (P == '0') || (W == '1');
10693 wback = BitIsClear(opcode, 24) || BitIsSet(opcode, 21);
10699 // if wback && (n == t || n == t2) then UNPREDICTABLE;
10700 if (wback && ((n == t) || (n == t2)))
10758 // if wback then R[n] = offset_addr;
10759 if (wback) {
10784 if wback then R[n] = offset_addr;
10796 bool wback;
10809 // index = (P == '1'); add = (U == '1'); wback = (P == '0') || (W == '1');
10812 wback = BitIsClear(opcode, 24) || BitIsSet(opcode, 21);
10822 // if wback && (n == 15 || n == t || n == t2) then UNPREDICTABLE;
10823 if (wback && ((n == 15) || (n == t) || (n == t2)))
10826 // if ArchVersion() < 6 && wback && m == n then UNPREDICTABLE;
10827 if ((ArchVersion() < 6) && wback && (m == n))
10883 // if wback then R[n] = offset_addr;
10884 if (wback) {
10909 if wback then R[n] = offset_addr;
10921 bool wback;
10933 // index = (P == '1'); add = (U == '1'); wback = (W == '1');
10936 wback = BitIsSet(opcode, 21);
10938 // if wback && (n == t || n == t2) then UNPREDICTABLE;
10939 if (wback && ((n == t) || (n == t2)))
10960 // index = (P == '1'); add = (U == '1'); wback = (P == '0') || (W == '1');
10963 wback = BitIsClear(opcode, 24) || BitIsSet(opcode, 21);
10969 // if wback && (n == 15 || n == t || n == t2) then UNPREDICTABLE;
10970 if (wback && ((n == 15) || (n == t) || (n == t2)))
11036 // if wback then R[n] = offset_addr;
11037 if (wback) {
11062 if wback then R[n] = offset_addr;
11074 bool wback;
11088 // index = (P == '1'); add = (U == '1'); wback = (P == '0') || (W == '1');
11091 wback = BitIsClear(opcode, 24) || BitIsSet(opcode, 21);
11101 // if wback && (n == 15 || n == t || n == t2) then UNPREDICTABLE;
11102 if (wback && ((n == 15) || (n == t) || (n == t2)))
11105 // if ArchVersion() < 6 && wback && m == n then UNPREDICTABLE;
11106 if ((ArchVersion() < 6) && wback && (m == n))
11174 // if wback then R[n] = offset_addr;
11175 if (wback) {
11196 if wback then R[n] = if add then R[n]+imm32 else R[n]-imm32;
11212 bool wback;
11230 // single_regs = FALSE; add = (U == '1'); wback = (W == '1');
11233 wback = BitIsSet(opcode, 21);
11243 // if n == 15 && (wback || CurrentInstrSet() != InstrSet_ARM) then
11245 if (n == 15 && (wback || CurrentInstrSet() != eModeARM))
11264 // !), 101 (DB with !) single_regs = TRUE; add = (U == '1'); wback = (W
11269 wback = BitIsSet(opcode, 21);
11277 // if n == 15 && (wback || CurrentInstrSet() != InstrSet_ARM) then
11279 if ((n == 15) && (wback || (CurrentInstrSet() != eModeARM)))
11302 // if wback then R[n] = if add then R[n]+imm32 else R[n]-imm32;
11305 if (wback) {
11389 if wback then R[n] = if add then R[n]+imm32 else R[n]-imm32;
11406 bool wback;
11424 // single_regs = FALSE; add = (U == '1'); wback = (W == '1');
11427 wback = BitIsSet(opcode, 21);
11437 // if n == 15 && (wback || CurrentInstrSet() != InstrSet_ARM) then
11439 if ((n == 15) && (wback || (CurrentInstrSet() != eModeARM)))
11458 // !), 101 (DB with !) single_regs = TRUE; add = (U == '1'); wback = (W
11463 wback = BitIsSet(opcode, 21);
11471 // if n == 15 && (wback || CurrentInstrSet() != InstrSet_ARM) then
11473 if ((n == 15) && (wback || (CurrentInstrSet() != eModeARM)))
11501 // if wback then R[n] = if add then R[n]+imm32 else R[n]-imm32;
11502 if (wback) {
11853 if wback then R[n] = R[n] + (if register_index then R[m] else 8*regs);
11871 bool wback;
11928 // wback = (m != 15); register_index = (m != 15 && m != 13);
11929 wback = (m != 15);
11955 // if wback then R[n] = R[n] + (if register_index then R[m] else 8*regs);
11956 if (wback) {
12011 if wback then R[n] = R[n] + (if register_index then R[m] else ebytes);
12025 bool wback;
12094 // wback = (m != 15); register_index = (m != 15 && m != 13); if n == 15
12096 wback = (m != 15);
12119 // if wback then R[n] = R[n] + (if register_index then R[m] else ebytes);
12120 if (wback) {
12187 if wback then R[n] = R[n] + (if register_index then R[m] else 8*regs);
12205 bool wback;
12256 // wback = (m != 15); register_index = (m != 15 && m != 13);
12257 wback = (m != 15);
12287 // if wback then R[n] = R[n] + (if register_index then R[m] else 8*regs);
12288 if (wback) {
12343 if wback then R[n] = R[n] + (if register_index then R[m] else ebytes);
12357 bool wback;
12427 // wback = (m != 15); register_index = (m != 15 && m != 13); if n == 15
12429 wback = (m != 15);
12454 // if wback then R[n] = R[n] + (if register_index then R[m] else ebytes);
12455 if (wback) {
12502 if wback then R[n] = R[n] + (if register_index then R[m] else ebytes);
12518 bool wback;
12549 // wback = (m != 15); register_index = (m != 15 && m != 13);
12550 wback = (m != 15);
12576 // if wback then R[n] = R[n] + (if register_index then R[m] else ebytes);
12577 if (wback) {