Commit 2d7d1608 authored by Eli Zaretskii's avatar Eli Zaretskii

Clean up the Windows x64 changes.

 nt/preprep.c (RVA_TO_PTR): Use 'unsigned char *' instead of
 'void *', for pointer arithmetics.
 (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_SECTION_OFFSET): Enclose all
 macro arguments in parentheses.

 src/unexw32.c (OFFSET_TO_RVA, RVA_TO_OFFSET)
 (RVA_TO_SECTION_OFFSET): Encode all macro arguments in parentheses.
 (RVA_TO_PTR): Cast the result of RVA_TO_OFFSET to 'unsigned char *',
 as the previous version used 'void *'.
 src/ralloc.c (ROUNDUP): Fix last change.
 (MEM_ROUNDUP): Don't cast MEM_ALIGN, it is already of type
 'size_t'.

Fixes: debbugs:12544
parent 7692b36b
2012-10-01 Eli Zaretskii <eliz@gnu.org>
* preprep.c (RVA_TO_PTR): Use 'unsigned char *' instead of
'void *', for pointer arithmetics.
(OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_SECTION_OFFSET): Enclose all
macro arguments in parentheses.
2012-09-30 Eli Zaretskii <eliz@gnu.org>
* makefile.w32-in ($(TRES)): Use $(EMACS_MANIFEST).
......
......@@ -279,16 +279,16 @@ relocate_offset (DWORD_PTR offset,
}
#define OFFSET_TO_RVA(offset, section) \
(section->VirtualAddress + ((DWORD_PTR)(offset) - section->PointerToRawData))
((section)->VirtualAddress + ((DWORD_PTR)(offset) - (section)->PointerToRawData))
#define RVA_TO_OFFSET(rva, section) \
(section->PointerToRawData + ((DWORD_PTR)(rva) - section->VirtualAddress))
((section)->PointerToRawData + ((DWORD_PTR)(rva) - (section)->VirtualAddress))
#define RVA_TO_SECTION_OFFSET(rva, section) \
((DWORD_PTR)(rva) - section->VirtualAddress)
((DWORD_PTR)(rva) - (section)->VirtualAddress)
#define RVA_TO_PTR(var,section,filedata) \
((void *)(RVA_TO_OFFSET(var,section) + (filedata)->file_base))
((unsigned char *)(RVA_TO_OFFSET(var,section) + (filedata)->file_base))
/* Convert address in executing image to RVA. */
#define PTR_TO_RVA(ptr) ((DWORD_PTR)(ptr) - (DWORD_PTR) GetModuleHandle (NULL))
......
2012-10-01 Eli Zaretskii <eliz@gnu.org>
* unexw32.c (OFFSET_TO_RVA, RVA_TO_OFFSET)
(RVA_TO_SECTION_OFFSET): Encode all macro arguments in parentheses.
(RVA_TO_PTR): Cast the result of RVA_TO_OFFSET to 'unsigned char *',
as the previous version used 'void *'.
* ralloc.c (ROUNDUP): Fix last change.
(MEM_ROUNDUP): Don't cast MEM_ALIGN, it is already of type
'size_t'.
* w32proc.c <disable_itimers>: New static flag.
(init_timers): Initialize it to zero, after creating the critical
sections used by the timer threads.
......
......@@ -92,11 +92,11 @@ static int extra_bytes;
by changing the definition of PAGE. */
#define PAGE (getpagesize ())
#define ROUNDUP(size) (((size_t) (size) + page_size - 1) \
& ~((size_t)page_size - 1))
& ~((size_t)(page_size - 1)))
#define MEM_ALIGN sizeof (double)
#define MEM_ROUNDUP(addr) (((size_t)(addr) + MEM_ALIGN - 1) \
& ~((size_t)MEM_ALIGN - 1))
& ~(MEM_ALIGN - 1))
/* The hook `malloc' uses for the function which gets more space
from the system. */
......
......@@ -314,19 +314,19 @@ relocate_offset (DWORD_PTR offset,
}
#define OFFSET_TO_RVA(offset, section) \
(section->VirtualAddress + ((DWORD_PTR)(offset) - section->PointerToRawData))
((section)->VirtualAddress + ((DWORD_PTR)(offset) - (section)->PointerToRawData))
#define RVA_TO_OFFSET(rva, section) \
(section->PointerToRawData + ((DWORD_PTR)(rva) - section->VirtualAddress))
((section)->PointerToRawData + ((DWORD_PTR)(rva) - (section)->VirtualAddress))
#define RVA_TO_SECTION_OFFSET(rva, section) \
((DWORD_PTR)(rva) - section->VirtualAddress)
((DWORD_PTR)(rva) - (section)->VirtualAddress)
/* Convert address in executing image to RVA. */
#define PTR_TO_RVA(ptr) ((DWORD_PTR)(ptr) - (DWORD_PTR) GetModuleHandle (NULL))
#define RVA_TO_PTR(var,section,filedata) \
((DWORD_PTR)(RVA_TO_OFFSET (var,section) + (filedata).file_base))
((unsigned char *)(RVA_TO_OFFSET (var,section) + (filedata).file_base))
#define PTR_TO_OFFSET(ptr, pfile_data) \
((unsigned char *)(ptr) - (pfile_data)->file_base)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment