Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygencpu_ppc.c
Go to the documentation of this file.
00001 /* 00002 * File cpu_ppc.c 00003 * 00004 * Copyright (C) 2009-2009, Eric Pouech. 00005 * 00006 * This library is free software; you can redistribute it and/or 00007 * modify it under the terms of the GNU Lesser General Public 00008 * License as published by the Free Software Foundation; either 00009 * version 2.1 of the License, or (at your option) any later version. 00010 * 00011 * This library is distributed in the hope that it will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00014 * Lesser General Public License for more details. 00015 * 00016 * You should have received a copy of the GNU Lesser General Public 00017 * License along with this library; if not, write to the Free Software 00018 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA 00019 */ 00020 00021 #include <assert.h> 00022 00023 #include "ntstatus.h" 00024 #define WIN32_NO_STATUS 00025 #include "dbghelp_private.h" 00026 #include "winternl.h" 00027 #include "wine/debug.h" 00028 00029 WINE_DEFAULT_DEBUG_CHANNEL(dbghelp); 00030 00031 static unsigned ppc_get_addr(HANDLE hThread, const CONTEXT* ctx, 00032 enum cpu_addr ca, ADDRESS64* addr) 00033 { 00034 switch (ca) 00035 { 00036 #if defined(__powerpc__) 00037 case cpu_addr_pc: 00038 addr->Mode = AddrModeFlat; 00039 addr->Segment = 0; /* don't need segment */ 00040 addr->Offset = ctx->Iar; 00041 return TRUE; 00042 #endif 00043 default: 00044 case cpu_addr_stack: 00045 case cpu_addr_frame: 00046 FIXME("not done\n"); 00047 } 00048 return FALSE; 00049 } 00050 00051 static BOOL ppc_stack_walk(struct cpu_stack_walk* csw, LPSTACKFRAME64 frame, CONTEXT* context) 00052 { 00053 FIXME("not done\n"); 00054 return FALSE; 00055 } 00056 00057 static unsigned ppc_map_dwarf_register(unsigned regno) 00058 { 00059 FIXME("not done\n"); 00060 return 0; 00061 } 00062 00063 static void* ppc_fetch_context_reg(CONTEXT* ctx, unsigned regno, unsigned* size) 00064 { 00065 FIXME("NIY\n"); 00066 return NULL; 00067 } 00068 00069 static const char* ppc_fetch_regname(unsigned regno) 00070 { 00071 FIXME("Unknown register %x\n", regno); 00072 return NULL; 00073 } 00074 00075 DECLSPEC_HIDDEN struct cpu cpu_ppc = { 00076 IMAGE_FILE_MACHINE_POWERPC, 00077 4, 00078 CV_REG_NONE, /* FIXME */ 00079 ppc_get_addr, 00080 ppc_stack_walk, 00081 NULL, 00082 ppc_map_dwarf_register, 00083 ppc_fetch_context_reg, 00084 ppc_fetch_regname, 00085 }; Generated on Sun May 27 2012 04:23:20 for ReactOS by
1.7.6.1
|