aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/common/dwarf/dwarf2reader.cc5
-rw-r--r--src/common/dwarf/dwarf2reader.h2
-rw-r--r--src/common/dwarf/types.h7
3 files changed, 11 insertions, 3 deletions
diff --git a/src/common/dwarf/dwarf2reader.cc b/src/common/dwarf/dwarf2reader.cc
index 99acbe1f..bfe890de 100644
--- a/src/common/dwarf/dwarf2reader.cc
+++ b/src/common/dwarf/dwarf2reader.cc
@@ -605,7 +605,7 @@ bool LineInfo::ProcessOneOpcode(ByteReader* reader,
const char* start,
struct LineStateMachine* lsm,
size_t* len,
- uintptr_t pc,
+ uintptr pc,
bool *lsm_passes_pc) {
size_t oplen = 0;
size_t templen;
@@ -806,7 +806,8 @@ void LineInfo::ReadLines() {
while (!lsm.end_sequence) {
size_t oplength;
bool add_line = ProcessOneOpcode(reader_, handler_, header_,
- lineptr, &lsm, &oplength, (uintptr_t)-1, NULL);
+ lineptr, &lsm, &oplength, (uintptr)-1,
+ NULL);
if (add_line)
handler_->AddLine(lsm.address, lsm.file_num, lsm.line_num,
lsm.column_num);
diff --git a/src/common/dwarf/dwarf2reader.h b/src/common/dwarf/dwarf2reader.h
index eb9dc319..5d1c465b 100644
--- a/src/common/dwarf/dwarf2reader.h
+++ b/src/common/dwarf/dwarf2reader.h
@@ -110,7 +110,7 @@ class LineInfo {
const char* start,
struct LineStateMachine* lsm,
size_t* len,
- uintptr_t pc,
+ uintptr pc,
bool *lsm_passes_pc);
private:
diff --git a/src/common/dwarf/types.h b/src/common/dwarf/types.h
index 5f49ff9d..08a325aa 100644
--- a/src/common/dwarf/types.h
+++ b/src/common/dwarf/types.h
@@ -43,4 +43,11 @@ typedef unsigned short uint16;
typedef unsigned int uint32;
typedef unsigned long long uint64;
+#ifdef __PTRDIFF_TYPE__
+typedef __PTRDIFF_TYPE__ intptr;
+typedef unsigned __PTRDIFF_TYPE__ uintptr;
+#else
+#error "Can't find pointer-sized integral types."
+#endif
+
#endif // _COMMON_DWARF_TYPES_H__