1 // Copyright 2014 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 5 #ifndef V8_COMPILER_UNWINDING_INFO_WRITER_H_ 6 #define V8_COMPILER_UNWINDING_INFO_WRITER_H_ 7 8 #if V8_TARGET_ARCH_ARM 9 #include "src/compiler/arm/unwinding-info-writer-arm.h" 10 #elif V8_TARGET_ARCH_ARM64 11 #include "src/compiler/arm64/unwinding-info-writer-arm64.h" 12 #elif V8_TARGET_ARCH_X64 13 #include "src/compiler/x64/unwinding-info-writer-x64.h" 14 #else 15 16 // Placeholder for unsupported architectures. 17 18 #include "src/base/logging.h" 19 20 namespace v8 { 21 namespace internal { 22 23 class EhFrameWriter; 24 25 namespace compiler { 26 27 class InstructionBlock; 28 29 class UnwindingInfoWriter { 30 public: UnwindingInfoWriter(Zone * zone)31 explicit UnwindingInfoWriter(Zone* zone) {} 32 SetNumberOfInstructionBlocks(int number)33 void SetNumberOfInstructionBlocks(int number) { 34 if (FLAG_perf_prof_unwinding_info) UNIMPLEMENTED(); 35 } 36 BeginInstructionBlock(int pc_offset,const InstructionBlock * block)37 void BeginInstructionBlock(int pc_offset, const InstructionBlock* block) { 38 if (FLAG_perf_prof_unwinding_info) UNIMPLEMENTED(); 39 } EndInstructionBlock(const InstructionBlock * block)40 void EndInstructionBlock(const InstructionBlock* block) { 41 if (FLAG_perf_prof_unwinding_info) UNIMPLEMENTED(); 42 } 43 Finish(int code_size)44 void Finish(int code_size) {} 45 eh_frame_writer()46 EhFrameWriter* eh_frame_writer() { return nullptr; } 47 }; 48 49 } // namespace compiler 50 } // namespace internal 51 } // namespace v8 52 53 #endif 54 55 #endif // V8_COMPILER_UNWINDING_INFO_WRITER_H_ 56