v8-unwinder-state.h 865 B

12345678910111213141516171819202122232425262728293031
  1. // Copyright 2020 the V8 project authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #ifndef INCLUDE_V8_UNWINDER_STATE_H_
  5. #define INCLUDE_V8_UNWINDER_STATE_H_
  6. namespace v8 {
  7. #ifdef V8_TARGET_ARCH_ARM
  8. struct CalleeSavedRegisters {
  9. void* arm_r4;
  10. void* arm_r5;
  11. void* arm_r6;
  12. void* arm_r7;
  13. void* arm_r8;
  14. void* arm_r9;
  15. void* arm_r10;
  16. };
  17. #elif V8_TARGET_ARCH_X64 || V8_TARGET_ARCH_IA32 || V8_TARGET_ARCH_ARM64 || \
  18. V8_TARGET_ARCH_MIPS || V8_TARGET_ARCH_MIPS64 || V8_TARGET_ARCH_PPC || \
  19. V8_TARGET_ARCH_PPC64 || V8_TARGET_ARCH_RISCV64 || V8_TARGET_ARCH_S390 || \
  20. V8_TARGET_ARCH_LOONG64
  21. struct CalleeSavedRegisters {};
  22. #else
  23. #error Target architecture was not detected as supported by v8
  24. #endif
  25. } // namespace v8
  26. #endif // INCLUDE_V8_UNWINDER _STATE_H_