Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4)

Side by Side Diff: src/arm/eh-frame-arm.h

Issue 2023503002: Reland Implement .eh_frame writer and disassembler. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@eh-frame-base
Patch Set: Improve disassembler, get rid of PatchProcedureBoundariesInEhFrame. Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2016 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_X64_UNWINDING_INFO_X64_H
6 #define V8_X64_UNWINDING_INFO_X64_H
7
8 #include "src/globals.h"
9
10 namespace v8 {
11 namespace internal {
12
13 static const int kInitialCFARegister = 0x0b;
14 static const int kInitialCFAOffset = 0;
15 static const int kDataAlignmentFactor = 4;
16 static const int kInitialStateOffsetInCIE = 19;
17
18 // The code and data alignments are a bit unorthodox, but they suit our purpose.
19 static const byte kCIE[] = {
20 0x14, 0x00, 0x00, 0x00, // Size of the CIE excluding this field
21 0x00, 0x00, 0x00, 0x00, // CIE identifier, always 0
22 0x03, // CIE version 3
23 0x7a, 0x4c, 0x52, 0x00, // Augmentation string zLR
24 0x01, // Code alignment factor: 1
rmcilroy 2016/06/28 10:37:32 I think we always have code aligned to 4 (or kPoin
Stefano Sanfilippo 2016/06/29 15:16:20 This is just a constant that is factored out from
rmcilroy 2016/06/30 15:23:10 I see, this is fine.
25 0x04, // Data alignment factor: 4
rmcilroy 2016/06/28 10:37:32 Use kDataAlignmentFactor and other constants here
Stefano Sanfilippo 2016/06/29 15:16:20 Replaced kInitialCFAOffset where appropriate. kDa
rmcilroy 2016/06/30 15:23:10 As mentioned in a new comment in eh-frame-x64, I t
26 0x0e, // Return address register: lr (r14)
27 0x02, // Length of augmentation data
28 0xff, // No LSDA
29 0x1b, // FDE encoding: DW_EH_PE_sdata4 | DW_EH_PE_pcrel
30 // Initial state
31 0x0c, 0x0b, 0x00, // CFA @ fp+0
32 0x08, 0x0e, // lr valid
33 };
34
35 } // namespace internal
36 } // namespace v8
37
38 #endif
OLDNEW
« no previous file with comments | « BUILD.gn ('k') | src/arm/eh-frame-arm.cc » ('j') | src/arm/eh-frame-arm.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698