arch.h revision b3f8fef12fccb0914b7b28725f42192c279d31c9
15bfb061c4c7cfac6e1882a586cf36c849d95fceaJuan Cespedes#define BREAKPOINT_VALUE { 0x7f, 0xe0, 0x00, 0x08 } 2f1bfe203f5f1c0e11a614f9d593a68406f5cb47eJuan Cespedes#define BREAKPOINT_LENGTH 4 3f1bfe203f5f1c0e11a614f9d593a68406f5cb47eJuan Cespedes#define DECR_PC_AFTER_BREAK 0 4d914a206a11cc1011a45f00674b1e16988fae77fJuan Cespedes 5d914a206a11cc1011a45f00674b1e16988fae77fJuan Cespedes#define LT_ELFCLASS ELFCLASS32 6d914a206a11cc1011a45f00674b1e16988fae77fJuan Cespedes#define LT_ELF_MACHINE EM_PPC 7b3f8fef12fccb0914b7b28725f42192c279d31c9Petr Machata 876c61f15d7989bf7adffed2e46a44c34a80bd927Paul Gilliam#ifdef __powerpc64__ // Says 'ltrace' is 64 bits, says nothing about target. 99a2ad351a1c3215dc596ff3e2e3fd4bc24445a6bIan Wienand#define LT_ELFCLASS2 ELFCLASS64 109a2ad351a1c3215dc596ff3e2e3fd4bc24445a6bIan Wienand#define LT_ELF_MACHINE2 EM_PPC64 11b3f8fef12fccb0914b7b28725f42192c279d31c9Petr Machata#define ARCH_SUPPORTS_OPD 127003feea8035a3c4ee661dc2556d158e9ba41d39Petr Machata#endif 139a2ad351a1c3215dc596ff3e2e3fd4bc24445a6bIan Wienand 14be3207721cb07e7d01a81fb3beecd0327201478cPaul Gilliam#define PLT_REINITALISATION_BP "_start" 159a2ad351a1c3215dc596ff3e2e3fd4bc24445a6bIan Wienand 1676c61f15d7989bf7adffed2e46a44c34a80bd927Paul Gilliam#define PPC_NOP { 0x60, 0x00, 0x00, 0x00 } 1776c61f15d7989bf7adffed2e46a44c34a80bd927Paul Gilliam#define PPC_NOP_LENGTH 4 1876c61f15d7989bf7adffed2e46a44c34a80bd927Paul Gilliam 1976c61f15d7989bf7adffed2e46a44c34a80bd927Paul Gilliam#if (PPC_NOP_LENGTH != BREAKPOINT_LENGTH) 2076c61f15d7989bf7adffed2e46a44c34a80bd927Paul Gilliam#error "Length of the breakpoint value not equal to the length of a nop instruction" 2176c61f15d7989bf7adffed2e46a44c34a80bd927Paul Gilliam#endif 22