Home | History | Annotate | Download | only in Unwind

Lines Matching refs:addressSpace

22 #include "AddressSpace.hpp"
37 uint32_t functionStart, A &addressSpace,
43 static void frameUnwind(A &addressSpace, Registers_x86 &registers);
44 static void framelessUnwind(A &addressSpace,
49 uint32_t functionStart, A &addressSpace,
53 A &addressSpace, Registers_x86 &registers, bool indirectStackSize);
59 A &addressSpace, Registers_x86 &registers) {
63 addressSpace, registers);
66 addressSpace, registers, false);
69 addressSpace, registers, true);
77 A &addressSpace, Registers_x86 &registers) {
90 registers.setEBX(addressSpace.get32(savedRegisters));
93 registers.setECX(addressSpace.get32(savedRegisters));
96 registers.setEDX(addressSpace.get32(savedRegisters));
99 registers.setEDI(addressSpace.get32(savedRegisters));
102 registers.setESI(addressSpace.get32(savedRegisters));
114 frameUnwind(addressSpace, registers);
121 A &addressSpace, Registers_x86 &registers, bool indirectStackSize) {
133 uint32_t subl = addressSpace.get32(functionStart + stackSizeEncoded);
207 registers.setEBX(addressSpace.get32(savedRegisters));
210 registers.setECX(addressSpace.get32(savedRegisters));
213 registers.setEDX(addressSpace.get32(savedRegisters));
216 registers.setEDI(addressSpace.get32(savedRegisters));
219 registers.setESI(addressSpace.get32(savedRegisters));
222 registers.setEBP(addressSpace.get32(savedRegisters));
232 framelessUnwind(addressSpace, savedRegisters, registers);
238 void CompactUnwinder_x86<A>::frameUnwind(A &addressSpace,
242 registers.setEBP(addressSpace.get32(bp));
246 registers.setIP(addressSpace.get32(bp + 4));
251 A &addressSpace, typename A::pint_t returnAddressLocation,
254 registers.setIP(addressSpace.get32(returnAddressLocation));
267 uint64_t functionStart, A &addressSpace,
273 static void frameUnwind(A &addressSpace, Registers_x86_64 &registers);
274 static void framelessUnwind(A &addressSpace, uint64_t returnAddressLocation,
278 uint64_t functionStart, A &addressSpace,
282 A &addressSpace, Registers_x86_64 &registers, bool indirectStackSize);
288 A &addressSpace, Registers_x86_64 &registers) {
292 addressSpace, registers);
295 addressSpace, registers, false);
298 addressSpace, registers, true);
306 A &addressSpace, Registers_x86_64 &registers) {
319 registers.setRBX(addressSpace.get64(savedRegisters));
322 registers.setR12(addressSpace.get64(savedRegisters));
325 registers.setR13(addressSpace.get64(savedRegisters));
328 registers.setR14(addressSpace.get64(savedRegisters));
331 registers.setR15(addressSpace.get64(savedRegisters));
343 frameUnwind(addressSpace, registers);
349 compact_unwind_encoding_t encoding, uint64_t functionStart, A &addressSpace,
362 uint32_t subl = addressSpace.get32(functionStart + stackSizeEncoded);
436 registers.setRBX(addressSpace.get64(savedRegisters));
439 registers.setR12(addressSpace.get64(savedRegisters));
442 registers.setR13(addressSpace.get64(savedRegisters));
445 registers.setR14(addressSpace.get64(savedRegisters));
448 registers.setR15(addressSpace.get64(savedRegisters));
451 registers.setRBP(addressSpace.get64(savedRegisters));
461 framelessUnwind(addressSpace, savedRegisters, registers);
467 void CompactUnwinder_x86_64<A>::frameUnwind(A &addressSpace,
471 registers.setRBP(addressSpace.get64(rbp));
475 registers.setIP(addressSpace.get64(rbp + 8));
479 void CompactUnwinder_x86_64<A>::framelessUnwind(A &addressSpace,
483 registers.setIP(addressSpace.get64(returnAddressLocation));
497 uint64_t functionStart, A &addressSpace,
505 uint64_t functionStart, A &addressSpace,
509 A &addressSpace, Registers_arm64 &registers);
515 A &addressSpace, Registers_arm64 &registers) {
519 addressSpace, registers);
522 addressSpace, registers);
529 compact_unwind_encoding_t encoding, uint64_t, A &addressSpace,
537 registers.setRegister(UNW_ARM64_X19, addressSpace.get64(savedRegisterLoc));
539 registers.setRegister(UNW_ARM64_X20, addressSpace.get64(savedRegisterLoc));
543 registers.setRegister(UNW_ARM64_X21, addressSpace.get64(savedRegisterLoc));
545 registers.setRegister(UNW_ARM64_X22, addressSpace.get64(savedRegisterLoc));
549 registers.setRegister(UNW_ARM64_X23, addressSpace.get64(savedRegisterLoc));
551 registers.setRegister(UNW_ARM64_X24, addressSpace.get64(savedRegisterLoc));
555 registers.setRegister(UNW_ARM64_X25, addressSpace.get64(savedRegisterLoc));
557 registers.setRegister(UNW_ARM64_X26, addressSpace.get64(savedRegisterLoc));
561 registers.setRegister(UNW_ARM64_X27, addressSpace.get64(savedRegisterLoc));
563 registers.setRegister(UNW_ARM64_X28, addressSpace.get64(savedRegisterLoc));
569 addressSpace.getDouble(savedRegisterLoc));
572 addressSpace.getDouble(savedRegisterLoc));
577 addressSpace.getDouble(savedRegisterLoc));
580 addressSpace.getDouble(savedRegisterLoc));
585 addressSpace.getDouble(savedRegisterLoc));
588 addressSpace.getDouble(savedRegisterLoc));
593 addressSpace.getDouble(savedRegisterLoc));
596 addressSpace.getDouble(savedRegisterLoc));
611 compact_unwind_encoding_t encoding, uint64_t, A &addressSpace,
616 registers.setRegister(UNW_ARM64_X19, addressSpace.get64(savedRegisterLoc));
618 registers.setRegister(UNW_ARM64_X20, addressSpace.get64(savedRegisterLoc));
622 registers.setRegister(UNW_ARM64_X21, addressSpace.get64(savedRegisterLoc));
624 registers.setRegister(UNW_ARM64_X22, addressSpace.get64(savedRegisterLoc));
628 registers.setRegister(UNW_ARM64_X23, addressSpace.get64(savedRegisterLoc));
630 registers.setRegister(UNW_ARM64_X24, addressSpace.get64(savedRegisterLoc));
634 registers.setRegister(UNW_ARM64_X25, addressSpace.get64(savedRegisterLoc));
636 registers.setRegister(UNW_ARM64_X26, addressSpace.get64(savedRegisterLoc));
640 registers.setRegister(UNW_ARM64_X27, addressSpace.get64(savedRegisterLoc));
642 registers.setRegister(UNW_ARM64_X28, addressSpace.get64(savedRegisterLoc));
648 addressSpace.getDouble(savedRegisterLoc));
651 addressSpace.getDouble(savedRegisterLoc));
656 addressSpace.getDouble(savedRegisterLoc));
659 addressSpace.getDouble(savedRegisterLoc));
664 addressSpace.getDouble(savedRegisterLoc));
667 addressSpace.getDouble(savedRegisterLoc));
672 addressSpace.getDouble(savedRegisterLoc));
675 addressSpace.getDouble(savedRegisterLoc));
681 registers.setFP(addressSpace.get64(fp));
685 registers.setIP(addressSpace.get64(fp + 8));