A free Windows-compatible Operating System - mirrored from GitHub
Find a file
Gé van Geldorp 017639fcc2 Sync to Wine-20050930:
Alexandre Julliard <julliard@winehq.org>
- Generate 16-bit spec files as assembly code too.
- Output the resource data in assembly too.
- Factor out a couple of useful helper functions.
- Store RVAs instead of pointers wherever possible in the generated NT
  header and directories.
- Output constant strings in a more appropriate section than .text.
- Make sure that values of absolute symbols fit in 16 bits.
- Implemented import thunks for x86-64.
- Generate stub functions directly in assembly.
- Moved stub function generation to import.c. Added a get_stub_name
  function to ensure naming consistency.
- Now that everything is done in assembly in the spec file, directly
  generate a .s file to bypass gcc inefficiency with large data
  structures.
- Added support for 64-bit format NT header and export/import tables.
- Now that we have to be able to run the assembler from winebuild, added
  an option to generate a .spec.o file in a single step.
  Added --save-temps and --verbose options for easier debugging.
- Added an entry point routine for native drivers.
- Added a bit of framework for future x86_64 support.
- Create an assembly file with all undefined symbols and add it to the
  link command so that the symbols show up in the final undefined list.
  Use that list to create thunks for all exported but undefined symbols,
  to make sure all export RVAs point somewhere inside the module.
- Take into account -noname functions when checking for duplicate export
  names. Fixed a couple of issues found by the stricter check.
- Generate the NT header in assembly instead of using a C structure.
- Don't remove ignored symbols from the undefined list, simply skip them
  when resolving imports.
  Added get_temp_file_name utility function.
- Fixed stack offset of %eax register.
- Output the delayed import table using assembly too.
- Added a common function to declare global symbols, and make them
  hidden on platforms that support it.
- Fixed a number of pointer to integer conversions that wouldn't work
  right on a 64-bit platform.
- Output the import directory using assembly instead of C structures.
- Defined a proper structure for debug channels.
  Also put all the function pointers inside a structure and added
  __wine_dbg_set_functions to change them instead of exporting the
  pointers directly.
- Moved return value handling to the individual relay thunks so that we
  only need one version of wine_call_from_16.
  Patch the wine_call_from_16 address along with the cs value directly
  in the 16-bit code segment to avoid the need for special magic in the
  import thunks.
- Moved the spec file init function and constructor to winecrt0.
- Make the users of wine_call_from_32_regs save %eax so that we don't
  need a special hack in the import thunk.
  Added a get_pc_thunk_eax function to simplify the code a bit.
- Get rid of the debug channels support.

svn path=/trunk/; revision=18325
2005-10-08 12:18:07 +00:00
cis
irc added clean rule 2005-08-19 21:58:31 +00:00
msvc6
os2 OS/2: more changes to make it conform to rbuild. 2005-08-12 20:55:07 +00:00
posix Begin making the 'posix' module conform to rbuild. 2005-08-13 12:35:00 +00:00
reactos Sync to Wine-20050930: 2005-10-08 12:18:07 +00:00
rosapps Simple implementation of the MS comp utility (remembered to add the files this time :) ) 2005-09-25 20:46:28 +00:00
rosky
vms Modify to conform to the new CSR. 2005-10-02 19:31:30 +00:00