Commit Graph
40710 Commits
Author SHA1 Message Date
Timo Kreuzer cb79d231d7 [HAL]
- Simplify check for matching kernel/hal
- Remove underscore from _MsgUnimplemented

svn path=/branches/ros-amd64-bringup/; revision=45443
2010-02-06 01:26:52 +00:00
Timo Kreuzer 548ef27d5c Add _crt_va_start, _crt_va_arg, _crt_va_end and __va_copy definitions for (MSVC & AMD64)
svn path=/branches/ros-amd64-bringup/; revision=45442
2010-02-06 01:24:30 +00:00
Timo Kreuzer 066e30ede1 Move definitinf of BitScanforward and BitScanReverse out of gcc specific area
svn path=/branches/ros-amd64-bringup/; revision=45441
2010-02-06 01:22:07 +00:00
Timo Kreuzer 0ddbbb06b6 Use .asciz instead of .ascii, because ML doesn't understand "\0"
svn path=/branches/ros-amd64-bringup/; revision=45439
2010-02-06 00:05:48 +00:00
Timo Kreuzer 046981b86f [NTOS]
On MSVC implement _lgdt, __sgdt, __lldt, __sldt, __ltr and __str as assembly functions, because there is no inline assembly.
The MSVC/ML64 built kernel now boots and WinDbg connects.

svn path=/branches/ros-amd64-bringup/; revision=45433
2010-02-05 03:05:51 +00:00
Timo Kreuzer 2e6b7c8bf1 - comment out an #error, looks like we don't need this
- comment out MINGW_ATTRIB_DEPRECATED definition

svn path=/branches/ros-amd64-bringup/; revision=45432
2010-02-05 03:04:18 +00:00
Timo Kreuzer 4088be01fe [FREELDR]
- Add DPRINT_WINDOWS DPRINT_PELOADER (the only useful) to DEBUG_ALL and DEBUG_CUSTOM
- Enable a few useful DPRINTs

svn path=/branches/ros-amd64-bringup/; revision=45431
2010-02-05 03:03:38 +00:00
Timo Kreuzer 3e8181cc61 - Add #pragma intrinsic for msvc intrinsics
svn path=/branches/ros-amd64-bringup/; revision=45430
2010-02-05 02:56:55 +00:00
Timo Kreuzer a43ba572f3 fix UNIMPLEMENTED macro yet another time
svn path=/branches/ros-amd64-bringup/; revision=45429
2010-02-05 02:53:23 +00:00
Timo Kreuzer 7e65e8ce41 [RTL]
Make slist.S ML64 compatible

svn path=/branches/ros-amd64-bringup/; revision=45428
2010-02-05 02:51:38 +00:00
Timo Kreuzer bf7d707939 [NTOS]
- Make assembly ML64 safe
- remove 2 stubs, add 2 others

svn path=/branches/ros-amd64-bringup/; revision=45427
2010-02-05 01:39:05 +00:00
Timo Kreuzer 139c298d14 [RTL]
MSVC compatibility fixes: inline -> __inline

svn path=/branches/ros-amd64-bringup/; revision=45426
2010-02-05 01:36:20 +00:00
Timo Kreuzer 28c8b7fbec [AMD64]
Switch from underscore prefixed symbols to unprefixed symbols. (MSVC compatibility)

svn path=/branches/ros-amd64-bringup/; revision=45410
2010-02-04 04:58:09 +00:00
Timo Kreuzer cb076d0fef [CRT]
Add back sin and cos to libcntpr, as they are needed by win32k atm ...

svn path=/branches/ros-amd64-bringup/; revision=45409
2010-02-04 04:45:58 +00:00
Timo Kreuzer ad67929566 [NDK]
- fix KGDT64 names
- make asm.h masm/ml compatible by using a HEX macro, that converts constants into either 0xAA or 0AAh format


svn path=/branches/ros-amd64-bringup/; revision=45408
2010-02-04 04:31:02 +00:00
Timo Kreuzer e817db75e4 [HAL]
Fix KGDT64 macro name

svn path=/branches/ros-amd64-bringup/; revision=45407
2010-02-04 04:22:58 +00:00
Timo Kreuzer 9a5b1e6a62 [FREELDR]
Remove Ke386SetXx, we don't need them and we don't have anymore.


svn path=/branches/ros-amd64-bringup/; revision=45406
2010-02-04 04:21:38 +00:00
Timo Kreuzer 025e922f69 [NTOS]
- Get rid of all Ke386* inline functions for amd64
- add some stubs for msvc

svn path=/branches/ros-amd64-bringup/; revision=45399
2010-02-03 18:53:41 +00:00
Timo Kreuzer 7f625e9e03 Add some EXTERNs and use OR instead of | for MASM/ML compatibility
svn path=/branches/ros-amd64-bringup/; revision=45398
2010-02-03 18:49:44 +00:00
Timo Kreuzer f495eb586a Fix setjmp based on the new syntax
svn path=/branches/ros-amd64-bringup/; revision=45397
2010-02-03 18:47:30 +00:00
Timo Kreuzer 0efb2e9187 Improve the UNIMPLEMENTED macro. Dedicated to aicom.
svn path=/branches/ros-amd64-bringup/; revision=45394
2010-02-03 16:57:14 +00:00
Timo Kreuzer da4f165f23 inline -> __inline
svn path=/branches/ros-amd64-bringup/; revision=45393
2010-02-03 16:50:34 +00:00
Timo Kreuzer 832d8290c8 [NTOS]
- Fix KGDT64 names, 
- Add missing .ALLOCSTACK

svn path=/branches/ros-amd64-bringup/; revision=45384
2010-02-03 00:18:24 +00:00
Timo Kreuzer c8f9aa3f4b [FREELDR]
Fix KGDT64 names, initialize KGDT64_NULL and KGDT64_R3_CMCODE

svn path=/branches/ros-amd64-bringup/; revision=45383
2010-02-03 00:04:27 +00:00
Timo Kreuzer a5e16bf6a6 Fix the UNIMPLEMENTED macro
svn path=/branches/ros-amd64-bringup/; revision=45382
2010-02-02 23:48:03 +00:00
Timo Kreuzer 34ef1bef80 [NTOS]
- Implement KiSystemFatalException, stubplement KiGeneralProtectionFaultHandler and KiXmmExceptionHandler, KiNpxNotAvailableFaultHandler in C
- Implement KiDivideErrorFault, KiOverflowTrap, KiBoundFault, KiInvalidOpcodeFault, KiNpxNotAvailableFault, KiNpxSegmentOverrunAbort, KiInvalidTssFault, KiSegmentNotPresentFault, KiStackFault, KiAlignmentFault, KiMcheckAbort, KiXmmException, KiRaiseAssertion in assembler
- Modify rsp instead of pushing a pseudo error code
- Move all unwind ops into ENTER_TRAP_FRAME macro

svn path=/branches/ros-amd64-bringup/; revision=45344
2010-01-30 13:35:46 +00:00
Timo Kreuzer f155d17a5a Add exception codes for asm
svn path=/branches/ros-amd64-bringup/; revision=45343
2010-01-30 13:21:28 +00:00
Timo Kreuzer 086a6f0140 add else
svn path=/branches/ros-amd64-bringup/; revision=45340
2010-01-30 04:27:17 +00:00
Timo Kreuzer 49da6c12d8 and the same for trap.S
svn path=/branches/ros-amd64-bringup/; revision=45338
2010-01-30 03:18:20 +00:00
Timo Kreuzer 2306a5788f remove the RIP() hack, instead use a constant rip=0 for MASM/ML
svn path=/branches/ros-amd64-bringup/; revision=45337
2010-01-30 03:17:11 +00:00
Timo Kreuzer 752c8aead9 trap.S is now fully MASM/ML compatible
svn path=/branches/ros-amd64-bringup/; revision=45336
2010-01-30 03:12:26 +00:00
Timo Kreuzer bfd0e180c3 use .altmacro for gas and hack the UNIMPLEMENTED macro
svn path=/branches/ros-amd64-bringup/; revision=45335
2010-01-30 03:11:39 +00:00
Timo Kreuzer fcd9ab3f50 fix macros...
svn path=/branches/ros-amd64-bringup/; revision=45334
2010-01-30 01:46:16 +00:00
Timo Kreuzer f0c278391b fixup trap.S. Almost there...
svn path=/branches/ros-amd64-bringup/; revision=45333
2010-01-30 01:17:06 +00:00
Timo Kreuzer e2151932e4 More macros and fixes
svn path=/branches/ros-amd64-bringup/; revision=45332
2010-01-30 01:16:42 +00:00
Timo Kreuzer cf3c481035 And once again fix trap.S
svn path=/branches/ros-amd64-bringup/; revision=45331
2010-01-30 00:53:01 +00:00
Timo Kreuzer 5698669639 Update macros a bit more
svn path=/branches/ros-amd64-bringup/; revision=45330
2010-01-30 00:52:23 +00:00
Timo Kreuzer fbe7bbfcdb Update trap.S to conform
svn path=/branches/ros-amd64-bringup/; revision=45329
2010-01-30 00:30:08 +00:00
Timo Kreuzer 459f389307 Update some asm macros, partly adding MASM/ML support
svn path=/branches/ros-amd64-bringup/; revision=45328
2010-01-30 00:22:03 +00:00
Timo Kreuzer fde64b37c3 make use of the new file
svn path=/branches/ros-amd64-bringup/; revision=45327
2010-01-29 23:41:52 +00:00
Timo Kreuzer 5a811f8ce2 Add include/reactos/asm.h
This file replaces asmmacro.S and shall provide GAS/ML64 compatibility definitions

svn path=/branches/ros-amd64-bringup/; revision=45326
2010-01-29 23:29:58 +00:00
Timo Kreuzer 6b38c83e7a [NTOS]
MSVC compatibility fix: use DECLSPEC_ALIGN and remove inline asm (it was testcode anyway)

svn path=/branches/ros-amd64-bringup/; revision=45325
2010-01-29 23:25:05 +00:00
Timo Kreuzer ef3224edab Fix parameters of KeUpdateSystemTime, make it regparm only for X86 ans remove the now deprecated stub.
Add a few stubs for MSVC

svn path=/branches/ros-amd64-bringup/; revision=45318
2010-01-29 13:23:00 +00:00
Timo Kreuzer a0055ff789 Use __inline instead of inline
svn path=/branches/ros-amd64-bringup/; revision=45314
2010-01-29 05:25:26 +00:00
Timo Kreuzer b4c3b1e6f6 unimplement a bunch or intrinsics for msc, as we cannot use inline asm.
svn path=/branches/ros-amd64-bringup/; revision=45313
2010-01-29 05:23:59 +00:00
Timo Kreuzer 9943d23d5d fix the same typo once more
svn path=/branches/ros-amd64-bringup/; revision=45295
2010-01-28 02:37:28 +00:00
Timo Kreuzer 01afdbbe91 [CRT]
Implement sin() in C. Code is actually 99% identical to cos.
Note: We are using even exponents for sin, too, as this results in higher precision than using uneven exponents.

svn path=/branches/ros-amd64-bringup/; revision=45294
2010-01-28 01:18:12 +00:00
Timo Kreuzer 80be387663 fix a typo
svn path=/branches/ros-amd64-bringup/; revision=45292
2010-01-28 00:59:40 +00:00
Timo Kreuzer c21ada51d6 [CRT]
- implement generic C version of cos(). On amd64 machines it will compile into very optimized SSE2 code. No need to use assembly.

svn path=/branches/ros-amd64-bringup/; revision=45290
2010-01-27 23:42:34 +00:00
Timo Kreuzer 9c9f4a9fd7 Revert r45245 - r45247
Although the idea of using mingw-w64's routines is good, we can't because it's using x87. We need SSE2.

svn path=/branches/ros-amd64-bringup/; revision=45255
2010-01-25 22:01:02 +00:00