Gabe Black [Wed, 3 Oct 2007 05:06:59 +0000 (22:06 -0700)]
X86: Fix up the microcode for the FST and FSTP instructions.
--HG--
extra : convert_revision :
ad68633e9b7eab425593acb20cf242bf98c2b642
Gabe Black [Wed, 3 Oct 2007 05:05:50 +0000 (22:05 -0700)]
X86: Get rid of a hack for ruflag which is no longer necessary.
--HG--
extra : convert_revision :
1bb60c9ddb483aead2af0201bbda938cc6d3f7cb
Gabe Black [Wed, 3 Oct 2007 05:05:10 +0000 (22:05 -0700)]
X86: Allow logic instructions to set ECF as well as CF.
--HG--
extra : convert_revision :
6ac20f069c86c23a8d443a7127afd6015166c00d
Gabe Black [Wed, 3 Oct 2007 05:04:20 +0000 (22:04 -0700)]
X86: Add classes for the actual x86 faults.
--HG--
extra : convert_revision :
bc060a01b5415551b335ca68ccbf126333ae20b0
Gabe Black [Wed, 3 Oct 2007 05:03:38 +0000 (22:03 -0700)]
X86: Hook in another version of the XCHG instruction.
--HG--
extra : convert_revision :
7b6f9cd2f59443622f6963dfee454175322c0ef5
Gabe Black [Wed, 3 Oct 2007 05:02:58 +0000 (22:02 -0700)]
X86: Implement MOVS
--HG--
extra : convert_revision :
29147e1b86f7c54ce9b5ff68001725802c665fc0
Gabe Black [Wed, 3 Oct 2007 05:02:30 +0000 (22:02 -0700)]
X86: Implement STOS.
--HG--
extra : convert_revision :
95f3bf185f07fe644d6ab96bbb6e598e406b92f4
Gabe Black [Wed, 26 Sep 2007 03:11:41 +0000 (20:11 -0700)]
Merge with head.
--HG--
extra : convert_revision :
f331b9cbd82086d63d4f35e18f9e08466c016225
Gabe Black [Wed, 26 Sep 2007 03:11:03 +0000 (20:11 -0700)]
SPARC: Remove parameter that was only ever set to one value.
--HG--
extra : convert_revision :
3c22e576d95bdc7566bbce9b92cf2a6ff153a66f
Gabe Black [Wed, 26 Sep 2007 03:10:04 +0000 (20:10 -0700)]
SPARC: Remove some redundant code from some of the fp instructions.
--HG--
extra : convert_revision :
68b0341ae7a367b84c44081f9a3d6d0bc6631649
Gabe Black [Wed, 26 Sep 2007 03:09:25 +0000 (20:09 -0700)]
SPARC: Clean up of privileged instructions.
--HG--
extra : convert_revision :
1fb055a7d186a3e9dff46f1c1b46bad6bcd00562
Gabe Black [Wed, 26 Sep 2007 03:08:34 +0000 (20:08 -0700)]
SPARC: Long overdue cleanup of the condition code handlers.
--HG--
extra : convert_revision :
ddc53a622a8f908fa48788f3b570f33fcfc25fff
Gabe Black [Wed, 26 Sep 2007 03:07:06 +0000 (20:07 -0700)]
Condition Codes: Fix type error.
--HG--
extra : convert_revision :
99f6c232cc421c6f741a8a11c029285e599eb183
Gabe Black [Wed, 26 Sep 2007 03:05:11 +0000 (20:05 -0700)]
SPARC: Clean up the branch instructions a bit.
--HG--
extra : convert_revision :
93d5cc68e4a327ee0492eeed7f3b56e98d2d83bb
Gabe Black [Wed, 26 Sep 2007 03:03:51 +0000 (20:03 -0700)]
Loader: Load all segments of an elf, rather than just the "text" and "data".
--HG--
extra : convert_revision :
b28bb9ac5cde72878e948d64f629de6e4b42c2e8
Gabe Black [Wed, 26 Sep 2007 03:02:30 +0000 (20:02 -0700)]
Loader: Only complain about TLS sections if you're using Alpha.
--HG--
extra : convert_revision :
125d19ad3fa1847752e455fa248ca3b2a55a2067
Gabe Black [Wed, 26 Sep 2007 03:00:46 +0000 (20:00 -0700)]
SPARC: Fix a stupid mistake which was breaking the SPARC regressions.
--HG--
extra : convert_revision :
34a11df0d467ea249211dd3aba86bc8d2aea45de
Gabe Black [Tue, 25 Sep 2007 21:44:12 +0000 (14:44 -0700)]
X86: Fix for uninitialized variables in stacktrace code.
--HG--
extra : convert_revision :
d19a03d8c14eb93a99f2c1838a9caa1286804c81
Gabe Black [Tue, 25 Sep 2007 00:39:56 +0000 (17:39 -0700)]
X86: Get X86_FS to compile.
--HG--
extra : convert_revision :
fb973bcf13648876d5691231845dd47a2be50f01
Gabe Black [Thu, 20 Sep 2007 02:08:42 +0000 (19:08 -0700)]
SPARC: Fix linking error from new flattenFloatIndex function.
--HG--
extra : convert_revision :
5260f33336e3a9d5e3592b784458e243157f17e3
Gabe Black [Thu, 20 Sep 2007 01:28:34 +0000 (18:28 -0700)]
X86: Implement the fld, fst, and fstp instructions.
--HG--
extra : convert_revision :
7dd274bdc3c34839c17d9012a745d7c95dfcfdd8
Gabe Black [Thu, 20 Sep 2007 01:27:55 +0000 (18:27 -0700)]
X86: Move the fp microops to their own file with their own base classes in C++ and python.
--HG--
extra : convert_revision :
9cd223f2005adb36fea2bb56fa39793a58ec958c
Gabe Black [Thu, 20 Sep 2007 01:26:42 +0000 (18:26 -0700)]
X86: Put in the foundation for x87 stack based fp registers.
--HG--
extra : convert_revision :
940f92efd4a9dc59106e991cc6d9836861ab69de
Gabe Black [Thu, 20 Sep 2007 01:25:17 +0000 (18:25 -0700)]
X86: Put in stubs for x87, 64 bit and 128 bit SIMD instruction microcode.
--HG--
rename : src/arch/x86/isa/insts/sse/__init__.py => src/arch/x86/isa/insts/simd128/__init__.py
extra : convert_revision :
efb4405aebaa4a04f33572e7d078ceca45872d9c
Gabe Black [Thu, 20 Sep 2007 01:24:11 +0000 (18:24 -0700)]
X86: Enable the rename system call.
--HG--
extra : convert_revision :
bc4a3b5b5ce8e17f632e65ce89df91e2b50e1274
Gabe Black [Thu, 20 Sep 2007 01:23:35 +0000 (18:23 -0700)]
X86: Enable the unlink system call.
--HG--
extra : convert_revision :
4230a13fdb652a87271f8d2ac9ead96cd2af07a5
Gabe Black [Thu, 13 Sep 2007 23:36:25 +0000 (16:36 -0700)]
Merge with head.
--HG--
extra : convert_revision :
22aafb1cead3f584e64c188dc8eb45e271f4e7e9
Gabe Black [Thu, 13 Sep 2007 23:35:41 +0000 (16:35 -0700)]
X86: Fix how ECF is computed in genFlags, and get rid of some duplicate code.
--HG--
extra : convert_revision :
f86330a5a9fea782ee63aaa18ca964fb6f9cef0b
Gabe Black [Thu, 13 Sep 2007 23:35:20 +0000 (16:35 -0700)]
X86: Make the shift and rotate instructions set the carry flag(s) and overflow flags like they're supposed to.
--HG--
extra : convert_revision :
c0523a5bbf53375ce979ca7d98a95e465be66fbe
Gabe Black [Thu, 13 Sep 2007 23:34:46 +0000 (16:34 -0700)]
X86: Total overhaul of the division instructions and microops.
--HG--
extra : convert_revision :
303ea45f69f7805361ad877fe6bb43fbc3dfd7a6
Ali Saidi [Thu, 13 Sep 2007 16:30:12 +0000 (12:30 -0400)]
Syscall Emulation: Add stat64 syscall.
Patch submitted by: Jonas Diemer [diemer (a) ida.ing.tu-bs.de]
--HG--
extra : convert_revision :
07638c05bb3f79aacce49457bbb8c17d0a3a7238
Ali Saidi [Wed, 12 Sep 2007 19:27:15 +0000 (15:27 -0400)]
Checkpointing: Fix directory regex
--HG--
extra : convert_revision :
4d3958eda66209373249e54e7deadd1a7442e828
Ali Saidi [Wed, 12 Sep 2007 19:24:24 +0000 (15:24 -0400)]
Checkpointing: Force drain/resume when switching a CPU
--HG--
extra : convert_revision :
7d9c3f4c8c357e3a9214deba5df3581beeaf7cb6
Ali Saidi [Wed, 12 Sep 2007 19:24:23 +0000 (15:24 -0400)]
Devices: More fixes to Intel NIC Model.
--HG--
extra : convert_revision :
14306d3cd79bbef7decdf2fd370ed7e7f2b10a93
Ali Saidi [Tue, 11 Sep 2007 04:01:24 +0000 (00:01 -0400)]
Loader: Error if a TLS section is found in the binary.
--HG--
extra : convert_revision :
d763c0382f3cbcc9786510f5a8e521ec9d55eff1
Gabe Black [Mon, 10 Sep 2007 23:49:07 +0000 (16:49 -0700)]
X86: Make the isa parser run if any of the microcode files change.
--HG--
extra : convert_revision :
7f6d07de7e0d728a9333fb46c953dbe6cb04e600
Gabe Black [Mon, 10 Sep 2007 23:42:41 +0000 (16:42 -0700)]
Fix for leaving EXTRAS blank
Apparently env['EXTRAS'] will return an empty string if not set. split will
then split it into an empty string, and normalize will turn "" into ".".
--HG--
extra : convert_revision :
f79efebb129fdd65161fcf4d4582c2a8541aeacd
Gabe Black [Mon, 10 Sep 2007 19:48:06 +0000 (12:48 -0700)]
Normalize the path pathed in through EXTRAS so it won't break with a trailing slash.
--HG--
extra : convert_revision :
c14e2c6d97b5bcb491b91eeb4e7dc04d1cc35475
Gabe Black [Mon, 10 Sep 2007 18:02:50 +0000 (11:02 -0700)]
Remove redundant endian.hh and use byteswap.hh in its place.
--HG--
extra : convert_revision :
5be1a5ba20d69d696d3974df147c2f219414c0b2
Gabe Black [Mon, 10 Sep 2007 18:01:52 +0000 (11:01 -0700)]
X86: Move a comment to be next to the code it describes.
--HG--
extra : convert_revision :
c384391175babb7cfdd3885ae9d9f1a9405ea44f
Gabe Black [Thu, 6 Sep 2007 23:32:03 +0000 (16:32 -0700)]
Merge with head.
--HG--
extra : convert_revision :
4fc5f595b23f72c0825d62f21efab46ed1db835b
Gabe Black [Thu, 6 Sep 2007 23:27:28 +0000 (16:27 -0700)]
X86: Rework the multiplication microops so that they work like they would in the patent.
--HG--
extra : convert_revision :
6fcf5dee440288d8bf92f6c5c2f97ef019975536
Gabe Black [Thu, 6 Sep 2007 23:25:29 +0000 (16:25 -0700)]
X86: Make signed multiplication do something different from unsigned.
--HG--
extra : convert_revision :
333c4a3464d708d4d8cea88931259ab96c2f75ed
Gabe Black [Thu, 6 Sep 2007 23:22:08 +0000 (16:22 -0700)]
X86: Make signed versions of partial register values available to microops.
--HG--
extra : convert_revision :
c820d1250f505911a341ced42d4f73796ea77f87
Gabe Black [Thu, 6 Sep 2007 23:20:12 +0000 (16:20 -0700)]
X86: Correct how the hi portion of a product is computed.
--HG--
extra : convert_revision :
1f503e1cae0374e62e6254e8073e903adc29d067
Gabe Black [Thu, 6 Sep 2007 23:18:34 +0000 (16:18 -0700)]
X86: Add a square root microop and the SSE sqrt instruction.
--HG--
extra : convert_revision :
ddc6e7e95111189d43f75bf84cd3d82433d982b3
Gabe Black [Thu, 6 Sep 2007 23:09:28 +0000 (16:09 -0700)]
X86: Add SSE comparison instructions and microops and move some FP microops to be with the other ones.
--HG--
extra : convert_revision :
ee0b5acde08d12c51a5282efb58d1ac72e0779af
Ali Saidi [Wed, 5 Sep 2007 21:12:41 +0000 (17:12 -0400)]
Bus: Fix drain code; old method could return 1 in atomic mode and never call de->process().
--HG--
extra : convert_revision :
35990e5eaf93f7a95a0ec72e9f92034a042def3e
Ali Saidi [Wed, 5 Sep 2007 18:57:50 +0000 (14:57 -0400)]
Configuration: Fix example script to only create one L2 if --l2cache and -nX are given as parameters.
Patch submitted by: Jonas Diemer [diemer (a) ida.ing.tu-bs.de]
--HG--
extra : convert_revision :
1dfc548d2bc33d622d829bbf385f4bf9700711cd
Gabe Black [Wed, 5 Sep 2007 06:46:08 +0000 (23:46 -0700)]
Merge with head.
--HG--
extra : convert_revision :
19bea7995285eeb7e277d3064f427429ade2bcb8
Gabe Black [Wed, 5 Sep 2007 06:44:37 +0000 (23:44 -0700)]
X86: Implement an SSE xor microop and instruction.
--HG--
extra : convert_revision :
949737d0f5d6fe4aa77cc4680d0c88caab3e8174
Gabe Black [Wed, 5 Sep 2007 06:42:55 +0000 (23:42 -0700)]
X86: Make the movfp microop use FloatRegBits instead of FloatRegs.
This fixes a problem where interpreting arbitrary bits as floating point would
change what the value was. These values are legitimate because the fp
registers could be used to move around arbitrary data.
--HG--
extra : convert_revision :
f1d7159ba137702b5722cc7c1b64ed7dd06c21de
Gabe Black [Wed, 5 Sep 2007 06:40:47 +0000 (23:40 -0700)]
X86: Add tracing to the floating point register file.
--HG--
extra : convert_revision :
f452d9179b929b980cf9e2d1e3de0431c51c5f4a
Gabe Black [Wed, 5 Sep 2007 06:39:57 +0000 (23:39 -0700)]
X86/StateTrace: Make m5 and statetrace track mmx and xmm registers, and actually compare xmm.
--HG--
extra : convert_revision :
02c6641200edb133c9bc11f1fdf3c1a0b1c87e77
Gabe Black [Wed, 5 Sep 2007 06:38:34 +0000 (23:38 -0700)]
X86: Hook in the fp arithmetic instructions. Stale python made it work before.
--HG--
extra : convert_revision :
af27f26ae810ebaae13faa572c5b4eb074620d91
Gabe Black [Wed, 5 Sep 2007 06:33:50 +0000 (23:33 -0700)]
X86: Implement some SSE fp microops and instructions.
--HG--
extra : convert_revision :
7e0595ef542fbfb701bfac7e9ac4648349a92b26
Gabe Black [Wed, 5 Sep 2007 06:32:18 +0000 (23:32 -0700)]
X86: Add some SSE floating point/integer conversion microops.
--HG--
extra : convert_revision :
2a1aa16709db940f5f40bbd84ca082f26b03b9c5
Gabe Black [Wed, 5 Sep 2007 06:31:40 +0000 (23:31 -0700)]
X86: Add floating point micro registers.
--HG--
extra : convert_revision :
442a5f8b9216638e4e6898f89eacb8695719e20f
Gabe Black [Wed, 5 Sep 2007 06:23:51 +0000 (23:23 -0700)]
X86: Fix a typo in the microassembly for the cqo instruction.
--HG--
extra : convert_revision :
ddf739e591e4414ade37b806a88f3c11292627e2
Gabe Black [Wed, 5 Sep 2007 06:23:13 +0000 (23:23 -0700)]
X86: Implement idiv and propogate the mul corner case fix.
--HG--
extra : convert_revision :
348aa081067728afa14dc5b609fc7e26dbc5fad5
Gabe Black [Wed, 5 Sep 2007 06:22:08 +0000 (23:22 -0700)]
X86: Fix a corner case where mul would overwrite an original register value it still needed.
--HG--
extra : convert_revision :
86ee0e2bf716d52c34ee731727d6366935f103ed
Gabe Black [Wed, 5 Sep 2007 06:21:41 +0000 (23:21 -0700)]
X86: Add in a file with floating point indexing which -should- have been in an earlier changeset.
--HG--
extra : convert_revision :
bf05f81df5e5b1de1ecd8ab7a6ef751922418987
Ali Saidi [Tue, 4 Sep 2007 17:12:58 +0000 (13:12 -0400)]
Serialization: Fix unserialization of object pointers
--HG--
extra : convert_revision :
a5aed880b2fc05841067e8597a58a9484e30b84a
Ali Saidi [Tue, 4 Sep 2007 17:12:58 +0000 (13:12 -0400)]
Config: Remove some ini file code that no longer works
--HG--
extra : convert_revision :
cb01dc0abeabc97b03d7af10959d92ceb62ea936
Gabe Black [Sat, 1 Sep 2007 05:28:07 +0000 (22:28 -0700)]
X86: Major rework of how regop microops are generated.
The new implementation uses metaclass, and gives a lot more precise control
with a lot less verbosity. The flags/no flags reg/imm variants are all handled
by the same python class now which supplies a constructor to the right C++
class based on context.
--HG--
extra : convert_revision :
712e3ec6de7a5a038da083f79635fd7a687d56e5
Gabe Black [Sat, 1 Sep 2007 05:26:02 +0000 (22:26 -0700)]
Microassembler: Pass the actual mnemonic used to the macroop add_micro function
--HG--
extra : convert_revision :
acaee747ab30747d602c1f4ac5f0c2b2573a2a9b
Gabe Black [Fri, 31 Aug 2007 20:02:58 +0000 (13:02 -0700)]
X86: Get x86 to compile again after the simobject constructor change.
--HG--
extra : convert_revision :
17a3e16e849bee88892223f0c993b19c15daa554
Miles Kaufmann [Thu, 30 Aug 2007 19:16:59 +0000 (15:16 -0400)]
python: Write configuration file without reassigning sys.stdout.
Using print >>ini_file syntax instead of reassigning sys.stdout
allows the python debugger to be used.
--HG--
extra : convert_revision :
63fc268f2e80f338ad1a7abe54b9e979e2239609
Miles Kaufmann [Thu, 30 Aug 2007 19:16:59 +0000 (15:16 -0400)]
Fix miscellaneous small typos.
--HG--
extra : convert_revision :
bfc0ac8e1c8a5d01d9fa5203184bbf99c8361da3
Miles Kaufmann [Thu, 30 Aug 2007 19:16:59 +0000 (15:16 -0400)]
devices: Avoid using assert() to catch misconfiguration
--HG--
extra : convert_revision :
2c6710e01a4402793a2e0eafcc829df19d03dda3
Miles Kaufmann [Thu, 30 Aug 2007 19:16:59 +0000 (15:16 -0400)]
params: Deprecate old-style constructors; update most SimObject constructors.
SimObjects not yet updated:
- Process and subclasses
- BaseCPU and subclasses
The SimObject(const std::string &name) constructor was removed. Subclasses
that still rely on that behavior must call the parent initializer as
: SimObject(makeParams(name))
--HG--
extra : convert_revision :
d6faddde76e7c3361ebdbd0a7b372a40941c12ed
Miles Kaufmann [Thu, 30 Aug 2007 19:16:58 +0000 (15:16 -0400)]
python: Eliminate the Python use of eval() and frame manipulation
--HG--
extra : convert_revision :
04520bcfab510580a1c7fb341afbd2487287d1ab
Gabe Black [Thu, 30 Aug 2007 03:39:41 +0000 (20:39 -0700)]
X86: Fix the sra microop to get the sign bit from the right operand.
--HG--
extra : convert_revision :
71e58dd6dd6918ee403f2e332c47e29acdace464
Gabe Black [Thu, 30 Aug 2007 03:38:22 +0000 (20:38 -0700)]
X86: Implement the movaps instruction.
--HG--
extra : convert_revision :
2aeb1c05205f8ea8f7484e8bacf3fbbc581defd2
Gabe Black [Thu, 30 Aug 2007 03:37:44 +0000 (20:37 -0700)]
X86: Implement the movsd instruction.
--HG--
extra : convert_revision :
a5a73e0ddd39144d2aeeb9cc6a299516752fd4c2
Gabe Black [Thu, 30 Aug 2007 03:37:16 +0000 (20:37 -0700)]
X86: Implement the movlpd instruction.
--HG--
extra : convert_revision :
dddb20fe48c0ae9de7cd0ba1a1467ecb690056c1
Gabe Black [Thu, 30 Aug 2007 03:36:44 +0000 (20:36 -0700)]
X86: Add an fp move microop.
--HG--
extra : convert_revision :
a9d6d3568cd2c6a65df91bf56ee1e43523f04630
Gabe Black [Thu, 30 Aug 2007 03:36:12 +0000 (20:36 -0700)]
X86: Add load and store microops that use the fp registers.
--HG--
extra : convert_revision :
153a055e888d8c47d59758a599dbd38f63008137
Gabe Black [Thu, 30 Aug 2007 03:35:30 +0000 (20:35 -0700)]
X86: Add operands to handle floating point registers.
--HG--
extra : convert_revision :
2e8289dbd3f5dda1221014d4ed0e9450f60de0cf
Gabe Black [Thu, 30 Aug 2007 03:34:52 +0000 (20:34 -0700)]
X86: Flesh out register indexing constants.
--HG--
extra : convert_revision :
56eedc076bbb7962c3976599a15ed93c7cb154c0
Gabe Black [Thu, 30 Aug 2007 03:34:00 +0000 (20:34 -0700)]
X86: Make the fp accessors not panic.
--HG--
extra : convert_revision :
c6d08863049a3f8755c53e1f49ce19ad6a2dedc7
Gabe Black [Thu, 30 Aug 2007 03:29:18 +0000 (20:29 -0700)]
X86: Make x86 syscall return just stuff the return value in eax.
--HG--
extra : convert_revision :
800d8a2398d5750c03c642264577c9c772684266
Gabe Black [Wed, 29 Aug 2007 02:36:51 +0000 (19:36 -0700)]
X86: More two byte opcode decoding. I missed two groups in the last changeset.
--HG--
extra : convert_revision :
1a2813b2e7d3e0e02c8f1474f372de5cf16e7d7b
Gabe Black [Wed, 29 Aug 2007 00:34:15 +0000 (17:34 -0700)]
X86: Hook in an implementation for lseek.
--HG--
extra : convert_revision :
d2424e73fa8ce56248c4edbda9db2714c4b0a92e
Gabe Black [Wed, 29 Aug 2007 00:18:13 +0000 (17:18 -0700)]
X86: More fully decode two byte opcodes.
This includes the most of the SSE stuff, but not some of the "groups" of
instructions.
--HG--
extra : convert_revision :
4725c34f3d73971ae1763611685c5877b6c51412
Gabe Black [Tue, 28 Aug 2007 21:30:50 +0000 (14:30 -0700)]
Address translation: De-templatize the GenericTLB class.
--HG--
extra : convert_revision :
b605a90a4a1071e39f49085a839fdcd175e09fdb
Gabe Black [Tue, 28 Aug 2007 01:33:47 +0000 (18:33 -0700)]
Merge with head.
--HG--
extra : convert_revision :
581e123b969fc3df30819affe524f484d03bab89
Gabe Black [Tue, 28 Aug 2007 01:31:36 +0000 (18:31 -0700)]
SPARC: Update the statistics for the SPARC gzip benchmark in o3.
--HG--
extra : convert_revision :
fd4709351b929e6a9e13dd27c17188616e4d86bb
Gabe Black [Tue, 28 Aug 2007 01:30:58 +0000 (18:30 -0700)]
Address Translation: Make the Generic TLB only compile in SE mode.
--HG--
extra : convert_revision :
7eb9a78480174f754f51f75983ee5a1b31280bd3
Gabe Black [Tue, 28 Aug 2007 01:30:02 +0000 (18:30 -0700)]
Alpha: Fixes to get alpha to compile again.
--HG--
extra : convert_revision :
9541cf6dae1fb1a1c6025898692b2e04fcf55c6d
Gabe Black [Tue, 28 Aug 2007 01:29:15 +0000 (18:29 -0700)]
MIPS: Fixes to get mips to compile.
--HG--
extra : convert_revision :
23561eda853a51046ae56c23a88466230c3e83f2
Gabe Black [Tue, 28 Aug 2007 01:26:36 +0000 (18:26 -0700)]
SPARC: Fixes to get SPARC to compile again.
--HG--
extra : convert_revision :
dab20c49fec9c2d385ca59b9ab627c2d3dddfe76
Gabe Black [Mon, 27 Aug 2007 04:45:40 +0000 (21:45 -0700)]
Merge with head
--HG--
extra : convert_revision :
cc73b9aaf73e9dacf52f3350fa591e67ca4ccee6
Gabe Black [Mon, 27 Aug 2007 03:41:36 +0000 (20:41 -0700)]
X86: Make the Ruflag microop work correctly, and make the code a little clearer.
--HG--
extra : convert_revision :
c551f51cdda46df99370363ed2d70916db8413eb
Gabe Black [Mon, 27 Aug 2007 03:40:42 +0000 (20:40 -0700)]
X86: Return values for some cpuid functions that match what my development machine returns.
--HG--
extra : convert_revision :
e6619da11f43bbe025ceabd06387dd24e1cd883b
Gabe Black [Mon, 27 Aug 2007 03:39:55 +0000 (20:39 -0700)]
X86: Make the microassembler accept lines which are just labels.
The labels on these lines will be associated with whatever the next microop
is.
--HG--
extra : convert_revision :
80c260e48ec1c16e6325061608e37c95a0610cfa
Gabe Black [Mon, 27 Aug 2007 03:38:42 +0000 (20:38 -0700)]
X86: Make cpuid actually consider the eax parameter and return different values.
--HG--
extra : convert_revision :
527c1cacdd20ab162859bba7f9a6bed33afa2d4f
Gabe Black [Mon, 27 Aug 2007 03:37:41 +0000 (20:37 -0700)]
X86: Fix the sign extension microop so it extends zeros correctly.
--HG--
extra : convert_revision :
9d7ca286ba7709175fa75226320601acce4ced98
Gabe Black [Mon, 27 Aug 2007 03:36:46 +0000 (20:36 -0700)]
X86: Implement cmps (string compare)
--HG--
extra : convert_revision :
0d6b783b2246b8ad8d91e4c63e407307ee11c651
Gabe Black [Mon, 27 Aug 2007 03:35:48 +0000 (20:35 -0700)]
X86: Make shift instructions set some of the flags they're supposed to.
The flag mechanism for microops needs to be fleshd out a little more to allow
for custom flag calculation methods for certain microops. Shift is an example
where the rules for calculating OF and CF are unique.
--HG--
extra : convert_revision :
91981a00c1efd05db702fffa9cea51f912583013