Commit graph

205 commits

Author SHA1 Message Date
blah38621_cp
6a36c7c3b8 Reverted the changes from my attempt to multi-thread IL2CPU. 2011-10-08 14:48:48 +00:00
blah38621_cp
606e309051 2011-10-08 01:42:17 +00:00
blah38621_cp
ad33893587 2011-10-08 00:30:08 +00:00
blah38621_cp
540ba18ddb 2011-10-08 00:28:05 +00:00
blah38621_cp
0375b13a2f 2011-10-08 00:23:20 +00:00
blah38621_cp
2f817d0bc2 2011-10-08 00:07:37 +00:00
blah38621_cp
a7b96e304d 2011-10-08 00:03:34 +00:00
blah38621_cp
b1f7c58a6b Made IL2CPU's scanning multi-threaded, as well as it's plug scanning. Also made the exceptions that a few instructions throw much easier to locate which file they are being thrown from. 2011-10-07 23:42:19 +00:00
blah38621_cp
57488c4dda Implemented the String(char,int32) constructor as supplied by Sebastien De Greef. 2011-10-06 21:38:02 +00:00
Trivalik_cp
c54cb3bdd2 remove unneeded decimal part in float/double ToString() for example 0.0 -> 0 ; 3.0 -> 3 2011-10-06 19:57:10 +00:00
blah38621_cp
470b77a5b4 Added double->float support to Conv_R4, also made Conv_I a pointer to Conv_I4, and made Conv_U a pointer to Conv_U4. 2011-10-02 00:39:17 +00:00
blah38621_cp
361219d23e Added Double support to Conv_I1, Conv_I2, Conv_I4, Conv_U1, Conv_U2, Conv_U4, and Conv_U8, also fixed float conversion in those same files. (We were rounding, we needed to be truncating) 2011-10-01 23:03:33 +00:00
Trivalik_cp
c134a571fa fix Conv, Ldelem, Mul, Newobj for string, Rem ( modulo), fix memory zero in cpuimpl, add char[] to debug in VS 2011-09-28 18:56:41 +00:00
Trivalik_cp
6663266609 fix Clt_Un todo 2011-09-19 20:30:06 +00:00
blah38621_cp
aee4bdbbb1 Got my optimizer working. It's currently only enabled if you have the debug level set to none. Also added a plug for System.Random that doesn't depend on the current tick count. 2011-09-17 17:37:36 +00:00
Trivalik_cp
f599c0726b fix all signed indirect pushes ( Ldind_Ix, Ldind_Ux) 2011-09-15 19:13:40 +00:00
Trivalik_cp
6f1efc4bcb add sign check for choose right asm instruction in LdLoc 2011-09-14 21:10:56 +00:00
blah38621_cp
c680d7d95f Implemented one of the things in the System.Number plug, which allows sbyte's to be converted to a string now. Also made a few changes to my optimizer, but still have it disabled, as it refuses to go past the bootloader with it enabled. 2011-09-13 23:42:07 +00:00
kudzu_cp
7162637756 2011-09-05 02:22:17 +00:00
Trivalik_cp
dfe8aa4c25 fix copy of bigger than int 2011-09-04 21:20:34 +00:00
Trivalik_cp
03fbd66909 fix newobj for struct (Stack Empty) 2011-09-04 20:53:53 +00:00
kudzu_cp
0d1beae6f0 2011-09-04 20:14:49 +00:00
kudzu_cp
7be11ee5f7 2011-09-04 20:11:19 +00:00
kudzu_cp
272c4f3410 2011-09-04 19:48:52 +00:00
kudzu_cp
4885dec621 2011-09-04 19:28:26 +00:00
kudzu_cp
4cbf5fed18 2011-09-04 19:27:51 +00:00
kudzu_cp
cc642ffb3f 2011-09-04 19:07:49 +00:00
kudzu_cp
6ed2739549 2011-09-04 03:07:02 +00:00
blah38621_cp
92dcac4a51 Made a few improvements to the speed of the ILScanner, including caching the resolved plugs.
Added the possibility for an optimization step in the IL2CPU MSBuild task. Currently commented out, but should work fine with a few modifications to the optimizer.
Moved classes that are dependent on Cosmos from the Orvid.Graphics, into the Orvid.Graphics.Cosmos assembly. 
Re-factored the font mechanism, added partially working .fnt Font support. 
Added a Rectangle class, and a Vec2d class, which is the same as Vec2, except with doubles for the X and Y values.
Made a small aesthetic improvement to the output of the File2ByteArray Converter.
2011-09-03 21:05:46 +00:00
Trivalik_cp
420a29936f move sqrt from core to il2cpu.x86 2011-09-03 12:02:07 +00:00
Trivalik_cp
51e893eb74 add movsx, fchs
implement neg CIL (needed for Abs())
fix floor and ceiling in range of int
add sign extension to LdArg and LdLoc
remove unneeded math functions, like min,max,abs
2011-09-02 21:03:14 +00:00
Trivalik_cp
bcd92cf77c add ctor(char,int) to stringimpl, and remove uncommented uneeded functions 2011-08-31 19:55:34 +00:00
Trivalik_cp
5032dff55b fix function call on struct:
i.e.: Color a = Color.Red; byte r = a.R;
2011-08-30 20:02:14 +00:00
Trivalik_cp
29914a55a1 fix up wrong operand order for 8byte dword substraction 2011-08-21 20:15:29 +00:00
kudzu_cp
cf1562c94c 2011-08-17 00:14:02 +00:00
kudzu_cp
ded8c1d56c 2011-08-14 13:57:59 +00:00
kudzu_cp
97c3471067 2011-08-14 13:36:09 +00:00
kudzu_cp
da67b059b2 2011-08-12 02:41:57 +00:00
kudzu_cp
75d0d9e342 2011-08-12 02:33:58 +00:00
kudzu_cp
3c16ec7714 2011-08-12 02:20:43 +00:00
kudzu_cp
767d8cd205 2011-08-12 02:04:43 +00:00
kudzu_cp
a469a39eaf 2011-08-12 01:54:07 +00:00
kudzu_cp
ea2a4196ce 2011-07-21 19:17:24 +00:00
kudzu_cp
4d51935cc9 Backed out label changes. They use . again. The # change caused too many issues. 2011-07-20 02:39:36 +00:00
kudzu_cp
32e5c353fb Labels use # instead of ., hopefully GDB will like them better. 2011-07-19 23:32:55 +00:00
Trivalik_cp
f5fb7ea6ec remove int3 from idt if no source debug activated 2011-07-19 20:41:28 +00:00
kudzu_cp
914cb71930 2011-07-18 16:03:50 +00:00
kudzu_cp
95691d9c29 2011-07-18 14:48:14 +00:00
kudzu_cp
951e5859fc 2011-07-18 04:43:07 +00:00
kudzu_cp
819f8b042d DebugStub 2011-07-18 02:48:09 +00:00
kudzu_cp
bcfd0dd94f No asm labels for X# 2011-07-18 01:25:43 +00:00
kudzu_cp
bf883e964a 2011-07-18 00:02:27 +00:00
kudzu_cp
1dfff2cdf8 DebugStub 2011-07-17 18:54:10 +00:00
kudzu_cp
b74dd21e3c X# DataMember implicit declarations 2011-07-17 04:27:51 +00:00
kudzu_cp
c4126c8d23 2011-07-17 01:46:43 +00:00
kudzu_cp
35089c88e9 2011-07-17 01:27:14 +00:00
kudzu_cp
24ca990ae1 Asm labelling for stepping. 2011-07-16 20:19:57 +00:00
kudzu_cp
c68c0104d5 2011-07-16 16:38:26 +00:00
kudzu_cp
4c8740d57b CPDB changes. 2011-07-16 04:10:10 +00:00
kudzu_cp
12ae3a9b60 DebugStub now uses Int3. 2011-07-15 03:43:33 +00:00
kudzu_cp
008bd31e4e IDT 2011-07-14 20:22:46 +00:00
kudzu_cp
5d145c351a IDT 2011-07-14 19:57:39 +00:00
kudzu_cp
05dcef2f88 IDT 2011-07-14 19:42:33 +00:00
kudzu_cp
e025f29841 2011-07-14 14:57:39 +00:00
kudzu_cp
aae5b4aade IDT work 2011-07-14 14:57:12 +00:00
Trivalik_cp
2e866fb3ae fix stack of 64bit divisions for small divisor 2011-07-14 11:52:44 +00:00
kudzu_cp
1243533aaa Minor preliminary IDT changes. 2011-07-14 02:49:06 +00:00
kudzu_cp
3c6f36e6e8 Final GDT changes. GDT is now initlized in the proper place, much earlier in the boot process. 2011-07-14 00:46:46 +00:00
kudzu_cp
967ca09a2c GDT work 2011-07-13 05:05:35 +00:00
kudzu_cp
b2b11c5b8c 2011-07-11 05:54:47 +00:00
kudzu_cp
07346828dd Fixed newobj for valuetypes. Will fix stfld next (They were both broken and affecting nullable types and other structs when stored in fields) 2011-07-11 04:55:40 +00:00
kudzu_cp
dea9bfb587 2011-07-11 01:42:13 +00:00
kudzu_cp
178a91974d Changes to IL op comment emissions in .asm file. 2011-07-10 02:39:21 +00:00
kudzu_cp
46ce6d7543 2011-06-27 04:11:39 +00:00
kudzu_cp
7169d633b6 2011-06-27 02:19:30 +00:00
kudzu_cp
14484980a9 2011-06-26 20:17:14 +00:00
Trivalik_cp
c256253671 fix sign for normal div CIL 2011-06-26 18:44:25 +00:00
Trivalik_cp
a245b52eea fix div for ulong, so that kudzu tests works all now 2011-06-26 11:48:51 +00:00
kudzu_cp
e25941b688 2011-06-26 04:06:01 +00:00
Trivalik_cp
28321c8e50 add add_ovf, add_ovf_un, overflow throws an exception which currently is not working, but message on console is working
add JECXE,JECXE ( not used yet )
2011-06-25 20:58:56 +00:00
Sentinel209_cp
657d8d9eb1 Framework for sending assembly for current breakpoint to the debugger. 2011-06-25 20:46:04 +00:00
kudzu_cp
0e397d3f49 2011-06-25 18:44:51 +00:00
Trivalik_cp
d06894cf16 fix 64-bit mul tested with ulong 2011-06-23 19:38:55 +00:00
kudzu_cp
5999161428 2011-06-19 21:21:53 +00:00
kudzu_cp
20fae79f44 2011-06-19 20:41:40 +00:00
kudzu_cp
21575c91a3 2011-06-19 20:27:28 +00:00
kudzu_cp
7a5d269422 2011-06-19 17:05:19 +00:00
kudzu_cp
8dd3294605 2011-06-19 00:12:59 +00:00
kudzu_cp
963f58915e 2011-06-18 14:23:19 +00:00
kudzu_cp
64ed225d97 2011-06-18 02:13:49 +00:00
kudzu_cp
4ee3b67199 2011-06-17 20:27:15 +00:00
Trivalik_cp
dfbf5f4f00 fix all branches for 64bit,
add comment in fatstream to array copy
2011-06-17 07:45:00 +00:00
Trivalik_cp
b1f09d2f16 comment out ToString for StringBuilder, there is no need for plug anymore 2011-06-16 21:23:16 +00:00
Trivalik_cp
8cd3d9cf47 GDB Client, change function label to textbox, allows to copy the name
change filesystem to int64, logical error in Read()
fix Ldarg, Ldarga xExtraSize, now should work really 64 bit and greater
2011-06-16 20:56:22 +00:00
blah38621_cp
8a98bca22d Made a small optimization to the end of methods, compacting the xLocalSize offsets into fewer instructions. This actually made a surprising difference to the size of the output .iso, as it lowered the size by 8kb. (I've not compared the output .asm size, but that difference should be significantly larger than 8kb) 2011-06-13 18:13:38 +00:00
Trivalik_cp
2b66b951ee add Conv_Ovf_I_Un implementation
fix wrong type in newobj
fix math.sqrt
2011-06-12 22:59:42 +00:00
blah38621_cp
20ef289111 Added an Inline attribute, which when used on a method in a plug, processes that method as an Assembler. See the IOPortImpl.cs file for an example of this new capability. The old method of using Assemblers is still supported. Also added an IOGroup for the mouse. 2011-06-11 01:57:27 +00:00
Trivalik_cp
00ae6acb11 comment out ASCIIEncodingImpl, because is all CIL internal
comment in string.FastAllocateString plug
2011-06-11 00:37:21 +00:00
Trivalik_cp
fcb4fa6b40 correct false permute arguments for Div 32bit integer 2011-06-10 20:43:22 +00:00
Trivalik_cp
1a549f6403 add possiblity to plug function that use internal class as argument, use:
public static bool nativeInitCultureData([Plugs.FieldType(Name = "System.Globalization.CultureData")] ref int cultureData)
2011-06-08 20:37:29 +00:00