Stanislav Shwartsman
b5a603c8c7
fixed %d->%u format found by cppcheck (patch by Maxim Derbasov)
2015-01-25 21:24:13 +00:00
Stanislav Shwartsman
63c3ed3f70
update (c) and fix instrumentation stub
2015-01-11 20:50:26 +00:00
Stanislav Shwartsman
3b237df41d
Added far branch origin to bx_instr_far_branch instrumentation callback by user request
...
Updated instrumentation examples
Fixed code duplication
2015-01-11 20:45:39 +00:00
Stanislav Shwartsman
d9fc472ba7
Added VMEXIT instrumentation callback
...
Fixed possible RSP corruption in SMP mode - the speculative_rsp variable might be not reset properly
2013-10-23 21:18:19 +00:00
Stanislav Shwartsman
d9998269ef
added branch_eip into near branch instructiontation callbacks
2012-07-24 15:32:55 +00:00
Volker Ruppert
53438e92c6
- fixes based on Debian patches by Guillem Jover
...
- set SHELL variable with configure script
- add '--tag CXX' argument to libtool calls
2012-07-14 07:01:43 +00:00
Stanislav Shwartsman
515d8b5c25
add new instrumentation callbacks for physical memory access from CPU
2012-06-18 11:41:26 +00:00
Stanislav Shwartsman
c7c431f88e
bx_instr_mem_data_access became completely obsolete with new stack optimization merged into SVN.
...
It already had limited usability before. With stack direct access optimization the callback won't be called for stack accesses as well.
See note by Brian Slechta:
=== Cut Hete ===
While using Bochs as a reference model for simulations, the simulator needs
information about what loads/stores are taking place with each instruction.
Presumably, that is what the BX_INSTR_MEM_DATA() instrumentation macros
cover (which is the place where our simulator hooks up).
The RETnear_xxx() functions call access_linear() directly, rather than call
read_virtual_xxx() functions. This is a problem for code making use of the
BX_INSTR_MEM_DATA() hook because it does not get called for these
instructions. Should this be changed along with some other instructions
that exhibit this?
=== Cut Hete ===
For Bryan's usage bx_instr_lin_access and bx_instr_phy_read/bx_instr_phy_write callbacks should be used.
2012-04-11 19:01:25 +00:00
Stanislav Shwartsman
c5b30582d9
cleanup instrumentation
2011-09-25 17:40:41 +00:00
Stanislav Shwartsman
330bf62f61
added INVPCID instruction support
2011-09-16 20:06:23 +00:00
Stanislav Shwartsman
f8e4e7f16b
clean up/fixed instrumentation examples + removed old 2-years old configure options check (deprecated)
2011-07-23 19:58:38 +00:00
Stanislav Shwartsman
642bdcfb0a
minimize instrumentation callback interface.
...
removed bx_instr_new_instruction callback, the callback ALWAYS can be replaced with another one - bx_instr_before_execution
TODO: fix instrumentation examples (example0 and example1)
2011-07-07 22:17:23 +00:00
Stanislav Shwartsman
df5348695d
fixed typo in tlb invalidation callback
2011-04-22 15:12:43 +00:00
Stanislav Shwartsman
0a88065722
updated instrumentation callbacks
2011-03-22 22:18:40 +00:00
Stanislav Shwartsman
bd60e0264c
change Copyright to Bochs Project
2009-12-04 16:53:12 +00:00
Stanislav Shwartsman
7254ea36a1
copyright fixes + small optimization
2009-10-14 20:45:29 +00:00
Stanislav Shwartsman
6758f9e49a
improved iteraction of internal dbger with instrumentation
2009-07-03 15:05:44 +00:00
Stanislav Shwartsman
700e492228
Fixed compilation issues
2009-03-22 09:52:48 +00:00
Volker Ruppert
91013a781d
- some more FSF address updates
2009-02-09 10:35:55 +00:00
Stanislav Shwartsman
74b885d74b
Updated instrumentation
...
Simplified exception code
2009-01-20 19:34:16 +00:00
Stanislav Shwartsman
3fb9d7d712
clean duplicate instrumentation
2008-12-29 18:02:01 +00:00
Stanislav Shwartsman
3d60e1e20d
Fixed CPU state after software reset (INIT).
...
Update instrumentation.
Clean extra space from plugin.h biosdev device name
2008-11-18 20:55:59 +00:00
Alexander Krisak
dcf7330e69
added additional two instrumentalization callbacks called when Bochs
...
started, but before reading .bochsrc and before Bochs exits.
2008-10-01 11:36:04 +00:00
Stanislav Shwartsman
0cd11fd385
Updated instrumentation callbacks - removed fetchdecode_completed callback
2008-09-06 17:49:32 +00:00
Stanislav Shwartsman
a6fda9a971
Instrumentation code updated, some PANIC messages fixed
2008-06-23 02:56:31 +00:00
Stanislav Shwartsman
a652e773d9
Update memory access instrumentation code
2008-04-19 10:12:09 +00:00
Stanislav Shwartsman
715b553aef
Rename BX_INTR_SHUTDOWN callback to BX_INSTR_EXIT
2008-04-15 21:27:11 +00:00
Stanislav Shwartsman
382901c273
Added const to Bochs instr callback
2008-03-03 15:09:30 +00:00
Stanislav Shwartsman
55ad3e89b6
another whitespace cleanup by Sebastien
2008-02-05 22:57:43 +00:00
Stanislav Shwartsman
b94557861f
added sysenter/sysexit/syscall/sysret to far branch instr callback
2008-01-18 08:56:57 +00:00
Stanislav Shwartsman
2e07b43ac6
Fixed compilation error
2008-01-17 21:35:21 +00:00
Stanislav Shwartsman
1ff667a2d1
instrumentation updates
2008-01-16 22:54:46 +00:00
Stanislav Shwartsman
f57e7c4a1f
Some more Bit32u -> bx_phy_address changes in the code
2007-12-13 21:53:55 +00:00
Stanislav Shwartsman
85d10e4f72
Added MWAIT callback
2007-12-13 21:41:32 +00:00
Stanislav Shwartsman
f145f4c847
Unify BX_INSTR_MEM_READ and BX_INSTR_MEM_WRITE callbacks to single callback BX_INSTR_MEM_ACCESS
...
Enable the callback with guest-to-host TLB enabled
Update instrumentation docs
2007-12-13 21:30:05 +00:00
Stanislav Shwartsman
05a5923971
Merged Bochs instrumentation patch by Lluis Vilanova
2007-12-13 17:16:21 +00:00
Stanislav Shwartsman
070d782ec8
Move paddr_valid param of dbg_xlate_linear2phy method to return value.
...
This is much easier to use.
2006-06-17 12:09:55 +00:00
Stanislav Shwartsman
7b6c2587a9
Now devices could be compiled separatelly from CPU
...
Averything that required cpu.h include now has it explicitly and there are a lot of files not dependant by CPU at all which will compile a lot faster now ...
2006-03-06 22:03:16 +00:00
Stanislav Shwartsman
83300a66dd
Fixed printing of 64-bit values forma. When compiling with cygwin with -mno-cygwin option the format should be like in MSVC
2006-01-17 18:17:01 +00:00
Stanislav Shwartsman
cff3464bc3
More update for instrumentation examples (x86-64 support)
2006-01-16 19:53:11 +00:00
Stanislav Shwartsman
2ff8b93f10
Update instrumentation
...
- x86-64 update
- fixed several compilation erros
- prepared for 'determine cpu count from .bocshrc' patch
- now it works ;)
2006-01-16 19:47:18 +00:00
Stanislav Shwartsman
3250edb8c5
Update instrumentation
2005-11-14 18:25:41 +00:00
Stanislav Shwartsman
4638f09b24
Added BX_INSTR_HLT instrumentation callback
2005-07-07 18:40:35 +00:00
Stanislav Shwartsman
a86002a8bc
Improve Bochs instrumentation
...
Small changes in APIC timer, should fix the bug report
[ 957660 ] >>PANIC<< APIC: R(curr timer count): delta < initial
2005-04-29 21:28:59 +00:00
Stanislav Shwartsman
e6e9dd3825
Extend Bochs instrumentation
...
Compatability fixes
2005-03-17 20:50:57 +00:00
Stanislav Shwartsman
d5210af668
Two new bx_instrumentation callbacks
2003-10-09 19:05:13 +00:00
Alexander Krisak
45df735c30
Apply Vitaly's Vorobyov debugger patch
2003-08-04 16:03:09 +00:00
Stanislav Shwartsman
8665979c87
* Fixed behavior of BX_INSTR_MEM_DATA callback for RMW memory accesses
...
See instrumentation.txt for details
2003-02-28 20:51:08 +00:00
Stanislav Shwartsman
cdfc3cbce4
instrumentation enchancements:
...
* renamed CPU_ID to BX_CPU_ID.
with this new name there is no possibility for name contentions and BX_CPU_ID
definition could be moved out to NEED_CPU_REG_SHORTCUTS block
* returned back `unsigned BX_CPU::which_cpu(void)` function
* added BX_CPU_ID parameter for
BX_INSTR_PHY_READ(a20addr, len);
BX_INSTR_PHY_WRITE(a20addr, len);
now it will be
BX_INSTR_PHY_READ(cpu_id, a20addr, len);
BX_INSTR_PHY_WRITE(cpu_id, a20addr, len);
2003-02-13 15:04:11 +00:00
Bryce Denney
906b4b2ede
- change BX_SREG_CS to BX_SEG_REG_CS
2002-11-20 17:55:41 +00:00