From 1fc30147282ab0d3dc8bc742082d4745e5ffe352 Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Fri, 28 Oct 2022 11:37:02 +0200 Subject: [PATCH] Cygwin: utils: drop 32 bit considerations Signed-off-by: Corinna Vinschen --- winsup/utils/dumper.cc | 6 +----- winsup/utils/mingw/cygcheck.cc | 9 ++------- winsup/utils/mingw/strace.cc | 10 ---------- winsup/utils/profiler.cc | 9 ++------- winsup/utils/ssp.c | 15 +++------------ 5 files changed, 8 insertions(+), 41 deletions(-) diff --git a/winsup/utils/dumper.cc b/winsup/utils/dumper.cc index 12124e26a..1bbf394fd 100644 --- a/winsup/utils/dumper.cc +++ b/winsup/utils/dumper.cc @@ -562,11 +562,7 @@ dumper::dump_module (asection * to, process_module * module) strncpy (header.elf_note_header.name, "win32module", NOTE_NAME_SIZE); #pragma GCC diagnostic pop -#ifdef __x86_64__ module_pstatus_ptr->data_type = NOTE_INFO_MODULE64; -#else - module_pstatus_ptr->data_type = NOTE_INFO_MODULE; -#endif module_pstatus_ptr->data.module_info.base_address = module->base_address; module_pstatus_ptr->data.module_info.module_name_size = strlen (module->name) + 1; strcpy (module_pstatus_ptr->data.module_info.module_name, module->name); @@ -707,7 +703,7 @@ dumper::init_core_dump () #ifdef __x86_64__ const char *target = "elf64-x86-64"; #else - const char *target = "elf32-i386"; +#error unimplemented for this target #endif core_bfd = bfd_openw (file_name, target); diff --git a/winsup/utils/mingw/cygcheck.cc b/winsup/utils/mingw/cygcheck.cc index a9d2bc2b6..69f75927f 100644 --- a/winsup/utils/mingw/cygcheck.cc +++ b/winsup/utils/mingw/cygcheck.cc @@ -625,12 +625,7 @@ dll_info (const char *path, HANDLE fh, int lvl, int recurse) } int base_off = 108; #else - if (arch != IMAGE_FILE_MACHINE_I386) - { - puts (verbose ? " (not x86 dll)" : "\n"); - return; - } - int base_off = 92; +#error unimplemented for this target #endif int opthdr_ofs = pe_header_offset + 4 + 20; unsigned short v[6]; @@ -2019,7 +2014,7 @@ static const char base_url[] = #ifdef __x86_64__ #define ARCH_STR "&arch=x86_64" #else -#define ARCH_STR "&arch=x86" +#error unimplemented for this target #endif static const char *ARCH_str = ARCH_STR; diff --git a/winsup/utils/mingw/strace.cc b/winsup/utils/mingw/strace.cc index f7e7b8fd0..c220643b3 100644 --- a/winsup/utils/mingw/strace.cc +++ b/winsup/utils/mingw/strace.cc @@ -494,11 +494,7 @@ handle_output_debug_string (DWORD id, LPVOID p, unsigned mask, FILE *ofile) buf[len] = '\0'; char *s = strtok (buf, " "); -#ifdef __x86_64__ unsigned long long n = strtoull (s, NULL, 16); -#else - unsigned long n = strtoul (s, NULL, 16); -#endif s = strchr (s, '\0') + 1; @@ -635,11 +631,7 @@ handle_output_debug_string (DWORD id, LPVOID p, unsigned mask, FILE *ofile) if (include_hex) { s -= 8; -#ifdef __x86_64__ sprintf (s, "%012llx", n); -#else - sprintf (s, "%08lx", n); -#endif strchr (s, '\0')[0] = ' '; } child->last_usecs = usecs; @@ -791,13 +783,11 @@ proc_child (unsigned mask, FILE *ofile, pid_t pid) case STATUS_BREAKPOINT: case 0x406d1388: /* SetThreadName exception. */ break; -#ifdef __x86_64__ case STATUS_GCC_THROW: case STATUS_GCC_UNWIND: case STATUS_GCC_FORCED: status = DBG_EXCEPTION_NOT_HANDLED; break; -#endif default: status = DBG_EXCEPTION_NOT_HANDLED; if (ev.u.Exception.dwFirstChance) diff --git a/winsup/utils/profiler.cc b/winsup/utils/profiler.cc index 985946e5f..520e29d12 100644 --- a/winsup/utils/profiler.cc +++ b/winsup/utils/profiler.cc @@ -191,11 +191,10 @@ sample (CONTEXT *context, HANDLE h) return 0ULL; } else -//TODO this approach does not support 32-bit executables on 64-bit #ifdef __x86_64__ return context->Rip; #else - return context->Eip; +#error unimplemented for this target #endif } @@ -495,8 +494,6 @@ find_text_section (LPVOID base, HANDLE h) read_child ((void *) &lfanew, sizeof (lfanew), &idh->e_lfanew, h); ptr += lfanew; - /* Code handles 32- or 64-bit headers depending on compilation environment. */ - /*TODO It doesn't yet handle 32-bit headers on 64-bit Cygwin or v/v. */ IMAGE_NT_HEADERS *inth = (IMAGE_NT_HEADERS *) ptr; read_child ((void *) &ntsig, sizeof (ntsig), &inth->Signature, h); if (ntsig != IMAGE_NT_SIGNATURE) @@ -507,7 +504,7 @@ find_text_section (LPVOID base, HANDLE h) #ifdef __x86_64__ if (machine != IMAGE_FILE_MACHINE_AMD64) #else - if (machine != IMAGE_FILE_MACHINE_I386) +#error unimplemented for this target #endif error (0, "target program was built for different machine architecture\n"); @@ -923,13 +920,11 @@ profile1 (FILE *ofile, pid_t pid) case STATUS_BREAKPOINT: break; -#ifdef __x86_64__ case STATUS_GCC_THROW: case STATUS_GCC_UNWIND: case STATUS_GCC_FORCED: status = DBG_EXCEPTION_NOT_HANDLED; break; -#endif default: status = DBG_EXCEPTION_NOT_HANDLED; diff --git a/winsup/utils/ssp.c b/winsup/utils/ssp.c index 4c98eefa9..96a90a1d9 100644 --- a/winsup/utils/ssp.c +++ b/winsup/utils/ssp.c @@ -49,12 +49,7 @@ typedef DWORD64 CONTEXT_REG; #define CONTEXT_REG_FMT "%016llx" #define ADDR_SSCANF_FMT "%lli" #else -#define KERNEL_ADDR 0x77000000 -#define CONTEXT_SP Esp -#define CONTEXT_IP Eip -typedef DWORD CONTEXT_REG; -#define CONTEXT_REG_FMT "%08lx" -#define ADDR_SSCANF_FMT "%li" +#error unimplemented for this target #endif #define TRACE_SSP 0 @@ -263,10 +258,7 @@ dump_registers (HANDLE thread) printf ("esi %016llx edi %016llx ebp %016llx esp %016llx %016llx\n", context.Rsi, context.Rdi, context.Rbp, context.Rsp, context.Rip); #else - printf ("eax %08lx ebx %08lx ecx %08lx edx %08lx eip\n", - context.Eax, context.Ebx, context.Ecx, context.Edx); - printf ("esi %08lx edi %08lx ebp %08lx esp %08lx %08lx\n", - context.Esi, context.Edi, context.Ebp, context.Esp, context.Eip); +#error unimplemented for this target #endif } @@ -947,8 +939,7 @@ main (int argc, char **argv) /* 1234567 123% 1234567 123% 1234567812345678 xxxxxxxxxxx */ printf (" Main-Thread Other-Thread BaseAddr DLL Name\n"); #else - /* 1234567 123% 1234567 123% 12345678 xxxxxxxxxxx */ - printf (" Main-Thread Other-Thread BaseAddr DLL Name\n"); +#error unimplemented for this target #endif total_pcount = 0;