523b5b8ca67d2063afd02342d0138b0dc0ed6706 |
|
23-Mar-2015 |
philippe <philippe@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
This patch further reduces the memory used by TT/TC (by about 15Mb on 32 bits memcheck default nr of sectors). Memory is reduced by using UShort typedef-s for Sector no and TTE no. Note that for TTE no, we had a mixture of UShort, UInt and Int used depending on the place (a TTE no was in any case constrained to be an UShort). The bss memory/startup space is also reduced by allocating the htt on demand (like tt and tc), using mmap the first time a sector is initialised. Changes: * pub_core_transtab.h : * 2 typedef to identify a sector and a tt entry (these 2 types are UShort) * add 2 #define 'invalid values' for these types * change the interface to use these types rather than UInt * m_transtab.c * use wherever relevant these 2 new types rather than UInt or UShort * replace the use of -1 by INV_SNO or INV_TTE * remove now useless typecast from Int/UInt to UShort for tte * schedule.c: use the new types git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15036 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
924c852b5883a7b42298dc8c7542116bd9a8a485 |
|
15-Mar-2015 |
philippe <philippe@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
New Option --avg-transtab-entry-size=<number> can be used to tune the size of the translation table sectors, either to gain memory or to avoid too many retranslations. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15016 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
5f1aeb620eb5a3aab662f8b949b031a77a0d14fe |
|
13-Jan-2015 |
florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Export VG_(discard_tranalsations_safely) to the tools. It is only allowed to be called in certain contexts which is enforced at runtime. Change callgrind accordingly. New header file pub_tool_transtab.h added. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14867 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
ddd61ff058f02059064e083a8accaefed23d5548 |
|
04-Jan-2015 |
florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Change most remaining use of Addr64 in coregrind and the tools to Addr. Tracking VEX r3056. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14846 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
44bd4465581ff28cef83bb39e684a489297d7b71 |
|
29-Dec-2014 |
florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Remove the type AddrH. The code assumes in many places that the host and guest architecture are the same. So the type is really pointless nowadays. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14834 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
26ed419d60369d0545510eba0832566e24452e1e |
|
04-Nov-2014 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Adds initial support for AArch64 (arm64) on Android. Small programs (/system/bin/ls, /system/bin/date) run. Still to do: * enable more malloc/free intercepts * enable wrappers for ashmem and binder syscalls * check to see if any special ioctl support is required for ARM Mali GPUs git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14690 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
518850bf0da07ed3e2244e307268ae0fd80e93a8 |
|
23-Oct-2014 |
florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Constify coregrind. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14656 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
de6ffbdebe204905c3bccc2f27f89b76313568e0 |
|
06-Oct-2014 |
florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Entangle header files a bit. Specifically, pub_core_basics.h no longer includes libvex.h. It isn't needed to successfully compile pub_core_basics.h standalone and the declarations libvex.h provides aren't used as broadly as the comment in the code implied. Move the guest-specific includes and some ifdeffery to the new file pub_core_guest.h For the curious reader: The change above avoids a problem when linking the linux-launcher which previously included libvex.h indirectly. libvex.h also defines the inline function LibVEX_Alloc which, when emitted, causes the link step to fail due to unresoled references (as the launcher does not link against libvex.a). See also BZ #339542. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14600 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
597314210494248b4fbefd45525a748439629218 |
|
24-Jul-2014 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Track vex r2910 (infrastructural improvements in representation of endianness in VEX). In short: in m_machine.c, VG_(machine_get_hwcaps), get the endianness of the host, and pass it through to all places (in VEX) where it is required. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14184 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
0f157ddb404bcde7815a1c5bf2d7e41c114f3d73 |
|
18-Oct-2013 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Update copyright dates (20XY-2012 ==> 20XY-2013) git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13658 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
a11ec17946cdbafb336e9121b64961c0633af2e7 |
|
18-Oct-2013 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Followup to r13652 (make the translation cache size be command-line controllable): reduce MAX_N_SECTORS to 24, speed up Sector initialisation, wording tweaks. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13655 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
8e1bee406c191820bc3b22bf55cfa69ef5fdcd8b |
|
18-Oct-2013 |
philippe <philippe@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Allow the user to dimension the translation cache A previous commit had decreased to 6 (on android) and increased to 16 (other platforms) the nr of sectors in the translation cache. This patch adds a command line option to let the user specify the nr of sectors as e.g. 16 sectors might be a lot and cause an out of memory for some workloads or might be too small for huge executable or executables using a lot of shared libs. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13652 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
17c5e2e3a2f48970063ea43a9abee3e11c72cb04 |
|
28-Dec-2012 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Improvements to the built-in profiling infrastructure: --profile-flags=00000000 now prints summary statistics, one line per profiled block, but with no translation details. Previously it had no effect. --profile-interval=<number> is a new flag that causes the profile data to be dumped and zeroed every <number> event checks. This makes it possible to get profile data without waiting for runs to end, and to get profile data which depends on the current workload etc. If --profile-interval=0 or is unset, the profile is printed only once, at the end of the run, as before. --profile-flags=XXXXXXXX (for at least one nonzero X) prints the summary lines both at the start and end of the profile, so you don't have to scroll back up to the top to see the summary. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13213 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
1636d33c13958b9c0e7d3059cdd5005746418eb2 |
|
15-Nov-2012 |
florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Char/HChar fixups for m_debuginfo and m_gdbserver. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13122 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
03f8d3fc25f5a45c5826259d1b33b7f310117279 |
|
05-Aug-2012 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Update copyright dates to include 2012. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12843 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
b7301c690606964dd1ece81ce2fd2b6fd90ab012 |
|
24-Apr-2012 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
For --profile-flags=, weight the counts by the number of guest insns in each IRSB, rather than considering each IRSB to have a weight of 1. This probably gives more representative profiles, especially post t-chain merge, which made inter-SB transitions more or less free compared to what they were before. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12542 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
291849fb0285e0998b4c9e33eb153eb3373c4a88 |
|
21-Apr-2012 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Merge branches/TCHAIN from r12476 (its creation point) into trunk. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12517 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
ec062e8d96a361af9905b5447027819dfbfee01a |
|
23-Oct-2011 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Update all copyright dates, from 20xy-2010 to 20xy-2011. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12206 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
9eecbbb9a9cbbd30b903c09a9e04d8efc20bda33 |
|
03-May-2010 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Update copyright dates to 2010. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11121 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
9f207460d70d38c46c9e81996a3dcdf90961c6db |
|
10-Mar-2009 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Updated copyright years. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9344 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
1dcee097db02f9ef3ba355162c4373d90d0e895c |
|
24-Feb-2009 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Remove a number of unused parameters, found with -Wunused-parameter. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9248 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
4d474d086188fd1f29fa97dbd84d8ea2e589a9b8 |
|
11-Feb-2008 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Update copyright dates ("200X-2007" --> "200X-2008"). git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7398 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
5f76de086a6d643db51e50a4e623df7dfc9b6161 |
|
11-Feb-2007 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Redo the dispatcher's fast-cache mechanism (VG_(tt_fast) et al) to be more cache friendly. This changes the mechanism from being a table of pointers to (guest address, translated code pairs) to being a table of pairs (guest address, pointer to translated code). The effect ranges from zero up to about 20% performance improvement on memcheck, the biggest effects being seen for programs which jump around a large number of blocks of code and whose data set does not fit in L2. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6582 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
9ebd6e0c607fa30301b1325874eb8de871c21cc5 |
|
08-Jan-2007 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Update copyright dates. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6488 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
e4b0bf07b0ee0a18eacc5aba91686ab5fc1d327b |
|
06-Jun-2006 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Update copyright dates. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5954 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
0ec07f32bbbb209d749b9974408e6f025ad40b31 |
|
12-Jan-2006 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Merge in function wrapping support from the FNWRAP branch. That branch hereby becomes inactive. This currently breaks everything except x86; fixes for amd64/ppc32 to follow. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5520 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
45f4e7c91119c7d01a59f5e827c67841632c9314 |
|
27-Sep-2005 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
This commit merges in changes from branches/ASPACEM (specifically, changes from r4341 through r4787 inclusive). That branch is now dead. Please do not commit anything else to it. For the most part the merge was not troublesome. The main areas of uncertainty are: - build system: I had to import by hand Makefile.core-AM_CPPFLAGS.am and include it in a couple of places. Building etc seems to still work, but I haven't tried building the documentation. - syscall wrappers: Following analysis by Greg & Nick, a whole lot of stuff was moved from -generic to -linux after the branch was created. I think that is satisfactorily glued back together now. - Regtests: although this appears to work, no .out files appear, which is strange, and makes it hard to diagnose regtest failures. In particular memcheck/tests/x86/scalar.stderr.exp remains in a conflicted state. - amd64 is broken (slightly), and ppc32 will be unbuildable. I'll attend to the former shortly. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4789 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
a30545069556d3dca4ca3feb7c621bdcb7b34107 |
|
27-Jul-2005 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Make VG_(discard_translations) 64-bit clean. As JosefW points out, it doesn't make much sense to have a 64-bit base address but only a 32-bit length. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4273 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
26412bd2c4ef3e55683141f132ebd1eb32d8530b |
|
07-Jul-2005 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Support for self modifying code on unfriendly platforms (x86, amd64) via the use of self-checking translations. (Friendly platforms which have icache-invalidation instructions we can observe, such as ppc32, are already handled correctly.) This should finally fix the longstanding problem of V incorrectly handling calls of statically nested functions (a gcc extension), and more generally make it a lot easier to use V to debug dynamic code generation systems. Since self-checking is a large performance overhead, there is some control via a command line flag: --smc-support=none Don't make any translations self-checking. --smc-support=stack Add checking code for translations taken from segments which have the SF_GROWDOWN flag set -- stacks, basically. This is the default. It should make gcc nested functions and GNU Ada work correctly with no intervention from the user. --smc-support=all Make all translations self-checking. This is expensive and you want to do this if you're debugging a JIT compiler or some such. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4122 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
2025cf98a3210c175a90fc77cb599cca1643bd68 |
|
26-Jun-2005 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Break up VG_(show_BB_profile)(), and move half of it into m_main. This removes m_transtab's dependence on m_translate (breaking a circular dependence) and m_debuginfo, hooray. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4035 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
d666ea764c78610934bd995eb1c5007d9cd9d56d |
|
26-Jun-2005 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Remove empty sanity check function. And clean up sanity checking in m_scheduler a little. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4033 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
2e8f4efe5e30be3bb52cd8fbf37c107de41eb40d |
|
14-May-2005 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Created pub_core_transtab_asm.h, killing core_asm.h in the process. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3711 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|
8bddf58af8cc7342d4bde6712c5a6a33bf2850d4 |
|
14-May-2005 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Modularised vg_transtab.c as m_transtab. Renamed add_to_trans_tab() as add_to_transtab() for consistency with the other names. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3703 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/pub_core_transtab.h
|