Stanislav Shwartsman
6e5a0c8313
fixed compliation err
2015-10-26 17:49:45 +00:00
Stanislav Shwartsman
a3cf34984a
correctly update instr example
2015-02-21 18:37:06 +00:00
Stanislav Shwartsman
e16c6eb30c
preparations and interface definition for memory type support
2015-02-19 20:23:08 +00:00
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
bcd83998a9
fixed function prototype mismatch resulting in compile err
2013-11-11 18:14:10 +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
168bfc6ab1
fixed typo caused compilation err
2013-01-18 08:12:36 +00:00
Stanislav Shwartsman
0d7a18ed0d
cleanup instrumentation stub
2012-08-05 13:40:32 +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
39e4335d6d
forgot one instance
2012-04-11 19:02:12 +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
279c61dc67
updated + fixed instrumentation example for instr histogram, code cleanup in the cpu
2012-03-28 21:11:19 +00:00
Stanislav Shwartsman
f6203dae7d
instrumentation: added special indication for indirect call/jump
2011-12-18 18:11:56 +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
Volker Ruppert
c78026a9a2
- deleted executable properties from source files
2011-04-03 10:29:19 +00:00
Stanislav Shwartsman
0a88065722
updated instrumentation callbacks
2011-03-22 22:18:40 +00:00
Stanislav Shwartsman
f2a87171c1
Fixed BX_INSTR_OPCODE callback, now its implementation closer to original definition.
...
New, updated definition of the callback:
void bx_instr_opcode(unsigned cpu, const Bit8u *opcode, unsigned len, bx_bool is32, bx_bool is64);
The callback is called each time, when Bochs completes to decode a new
instruction. Through this callback function Bochs could provide an opcode of
the instruction, opcode length and an execution mode (16/32/64).
Please note, that Bochs uses translation caches so each simulated instruction
might be executed multiple times but decoded only once.
2010-09-27 15:29:36 +00:00
Stanislav Shwartsman
4a70e73b9d
compilation fix + code duplication fix
2010-02-06 09:59:52 +00:00
Stanislav Shwartsman
cf6a4f5417
added ia_opcode into bxInstruction class
2010-01-09 15:11:32 +00:00
Stanislav Shwartsman
bd60e0264c
change Copyright to Bochs Project
2009-12-04 16:53:12 +00:00
Stanislav Shwartsman
fe42122cbe
Fix in new instr example
2009-11-05 15:39:56 +00:00
Stanislav Shwartsman
8e62d8eb40
Fix
2009-11-04 15:52:01 +00:00
Stanislav Shwartsman
868e716411
instrumentation fixes + new example
2009-11-04 15:48:28 +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
f4e98f8855
compilation fixes
2009-06-20 20:44:12 +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
Stanislav Shwartsman
51d380551e
Fixed instrumentation desc
2008-10-06 06:51:29 +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
9f2906eab8
Rename instrumentation callback for MEM ACCESS
2008-04-19 11:08:06 +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
b5cb48cae9
again compilation error fixed
2008-01-18 09:38:54 +00:00
Stanislav Shwartsman
b94557861f
added sysenter/sysexit/syscall/sysret to far branch instr callback
2008-01-18 08:56:57 +00:00