dyninst.git
13 years agoAdd new ppc32_linux platform. - - - - - - - - - - - - - - - - - - - - -
ssuen [Wed, 1 Aug 2007 18:47:26 +0000 (18:47 +0000)]
Add new ppc32_linux platform.  - - - - - - - - - - - - - - - - - - - - -

13 years agoHandle 64-bit ELF PowerPC Linux stack frame convention. Changes in stack walking...
ssuen [Wed, 1 Aug 2007 14:57:51 +0000 (14:57 +0000)]
Handle 64-bit ELF PowerPC Linux stack frame convention.  Changes in stack walking:  getCallerFrame().  Changes in function parameter access:  emitR(), case getParamOp.
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

13 years ago 64-bit ELF PowerPC Linux (and AIX) uses r2 as TOC base register; changes in emitFunc...
ssuen [Tue, 31 Jul 2007 18:17:23 +0000 (18:17 +0000)]
 64-bit ELF PowerPC Linux (and AIX) uses r2 as TOC base register; changes in emitFuncCall().  64-bit ELF PowerPC Linux (and AIX) also has a three-part function descriptor; changes in writeFunctionPtr().
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

13 years agoUpdate stack frame pointer handling to satisfy both 32-bit and 64-bit PowerPC ELF...
ssuen [Tue, 31 Jul 2007 15:42:02 +0000 (15:42 +0000)]
Update stack frame pointer handling to satisfy both 32-bit and 64-bit PowerPC ELF ABI documents.  Change STACKSKIP from 220 bytes to 288 bytes.  16-byte (quadword) align all stack frame pointer updates.
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

13 years agoCorrected data type of two register-save variables from 'unsigned' to 'unsigned long'.
ssuen [Mon, 30 Jul 2007 16:37:52 +0000 (16:37 +0000)]
Corrected data type of two register-save variables from 'unsigned' to 'unsigned long'.
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

13 years agogeneratedBlock().proc() returns NULL. Use (process *) parameter instead.
ssuen [Fri, 27 Jul 2007 18:04:24 +0000 (18:04 +0000)]
generatedBlock().proc() returns NULL.  Use (process *) parameter instead.
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

13 years agorecommit: Linux and AIX save registers into different places on the stack.
ssuen [Fri, 27 Jul 2007 16:58:49 +0000 (16:58 +0000)]
recommit:  Linux and AIX save registers into different places on the stack.
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

13 years agoAdding implementation of sparc specific functions that will be used by slicing
tugrul [Fri, 27 Jul 2007 16:09:35 +0000 (16:09 +0000)]
Adding implementation of sparc specific functions that will be used by slicing

13 years agoAdding sparc specific function prototypes that will be used by slicing
tugrul [Fri, 27 Jul 2007 16:09:01 +0000 (16:09 +0000)]
Adding sparc specific function prototypes that will be used by slicing

13 years agoIntroduces 32/64-bit hybrid instruction generation for Power64 architecture.
rchen [Fri, 27 Jul 2007 05:24:06 +0000 (05:24 +0000)]
Introduces 32/64-bit hybrid instruction generation for Power64 architecture.
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Added needed definitions for 64-bit instruction generation.

13 years agoIntroduces 32/64-bit hybrid instruction generation for Power64 architecture.
rchen [Fri, 27 Jul 2007 05:23:52 +0000 (05:23 +0000)]
Introduces 32/64-bit hybrid instruction generation for Power64 architecture.
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Modify instruction generation functions to consider mutatee address width.

13 years agoIntroduces 32/64-bit hybrid instruction generation for Power64 architecture.
rchen [Fri, 27 Jul 2007 05:23:38 +0000 (05:23 +0000)]
Introduces 32/64-bit hybrid instruction generation for Power64 architecture.
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Update for dsform structure change.

13 years agoFix instrumentation of overlapping functions - - - - - - - - - - - - - -
bernat [Thu, 26 Jul 2007 19:19:39 +0000 (19:19 +0000)]
Fix instrumentation of overlapping functions  - - - - - - - - - - - - - -
Fix problem with relocating overlapping functions

13 years agoFix instrumentation of overlapping functions - - - - - - - - - - - - - -
bernat [Thu, 26 Jul 2007 19:19:37 +0000 (19:19 +0000)]
Fix instrumentation of overlapping functions  - - - - - - - - - - - - - -
Add internal findOverlapping at the function level

13 years agoFix instrumentation of overlapping functions - - - - - - - - - - - - - -
bernat [Thu, 26 Jul 2007 19:19:35 +0000 (19:19 +0000)]
Fix instrumentation of overlapping functions  - - - - - - - - - - - - - -
Add findOverlapping method and implementation

13 years agoFix a bug with multithreaded process control.
bernat [Tue, 24 Jul 2007 21:58:52 +0000 (21:58 +0000)]
Fix a bug with multithreaded process control.

We can get into a situation like so:

Event: library load on thread 1
  - assigned to Handler 1
Event: iRPC finish on thread 2
  - assigned to Handler 2
Handler 1 finishes and calls async continue
  - process continues, although handler 2 is still in flight

The new algorithm checks for whether other handler threads are active.
This is normally handled by the signal generator thread, but in many
cases it's waiting in waitpid (and thus not useful).

The real answer is redesign the system to use a single handler thread;
this distributed consensus stuff isn't worth the complexity.

13 years agoRemove ^M characters for the One True Platform (tm)
bernat [Tue, 24 Jul 2007 20:38:12 +0000 (20:38 +0000)]
Remove ^M characters for the One True Platform (tm)

13 years agoMove typedefs/struct defines to their own files to reduce circularity
bernat [Tue, 24 Jul 2007 20:23:03 +0000 (20:23 +0000)]
Move typedefs/struct defines to their own files to reduce circularity

13 years agoAttempt to reduce needless header file includes to reduce build time
bernat [Tue, 24 Jul 2007 20:22:46 +0000 (20:22 +0000)]
Attempt to reduce needless header file includes to reduce build time

13 years agoRemove unnecessary #includes within header files
bernat [Tue, 24 Jul 2007 20:22:36 +0000 (20:22 +0000)]
Remove unnecessary #includes within header files

13 years agoFix parseThat bug by adding a default AST node for the default BPatch snippet constructor
bernat [Tue, 24 Jul 2007 20:22:33 +0000 (20:22 +0000)]
Fix parseThat bug by adding a default AST node for the default BPatch snippet constructor

13 years agoWindows compile fix
rutar [Mon, 23 Jul 2007 17:55:07 +0000 (17:55 +0000)]
Windows compile fix

13 years agoAdding explicit instantiation of BPatch_annotatable<instruction> in nt
tugrul [Fri, 20 Jul 2007 22:29:20 +0000 (22:29 +0000)]
Adding explicit instantiation of BPatch_annotatable<instruction> in nt

13 years agoRemoved unused function declaration
tugrul [Fri, 20 Jul 2007 22:28:15 +0000 (22:28 +0000)]
Removed unused function declaration

13 years agoAdd explicit instantiation of BPatch_annotatable to sparc
tugrul [Thu, 19 Jul 2007 17:47:28 +0000 (17:47 +0000)]
Add explicit instantiation of BPatch_annotatable to sparc

13 years agoChanging get_register_operands to make it operable with condition codes and implicit...
tugrul [Thu, 19 Jul 2007 17:45:53 +0000 (17:45 +0000)]
Changing get_register_operands to make it operable with condition codes and implicit reads/writes

13 years agoChanging call to get_register_operands
tugrul [Thu, 19 Jul 2007 17:44:39 +0000 (17:44 +0000)]
Changing call to get_register_operands

13 years agoChanging prototype of get_register_operands
tugrul [Thu, 19 Jul 2007 17:44:12 +0000 (17:44 +0000)]
Changing prototype of get_register_operands

13 years agoIncremental commit of 32-bit ppc64_linux port. - - - - - - - - - - - - -
ssuen [Thu, 19 Jul 2007 17:15:33 +0000 (17:15 +0000)]
Incremental commit of 32-bit ppc64_linux port.  - - - - - - - - - - - - -
Use libm.so and libutil.so to test dynamic library loading.  This is so that we don't depend on non-existent X11 dynamic libaries.

13 years agoIncremental commit of 32-bit ppc64_linux port. - - - - - - - - - - - - -
ssuen [Thu, 19 Jul 2007 17:15:31 +0000 (17:15 +0000)]
Incremental commit of 32-bit ppc64_linux port.  - - - - - - - - - - - - -
Linux and AIX save registers into different places on the stack.

13 years agoIncremental commit of 32-bit ppc64_linux port. - - - - - - - - - - - - -
ssuen [Thu, 19 Jul 2007 17:15:30 +0000 (17:15 +0000)]
Incremental commit of 32-bit ppc64_linux port.  - - - - - - - - - - - - -
For Linux, the blrl (branch via link register and link) instruction is not considered a function return instruction.  This is so that we don't get multiple function exit events out of fork().

13 years agoFix bug with mis-reported start and end addresses
bernat [Tue, 17 Jul 2007 22:40:03 +0000 (22:40 +0000)]
Fix bug with mis-reported start and end addresses

13 years agoAdded ifdef for compilation errors on other platforms
rutar [Tue, 17 Jul 2007 21:11:47 +0000 (21:11 +0000)]
Added ifdef for compilation errors on other platforms

13 years agoOpenMP Support
rutar [Tue, 17 Jul 2007 17:14:28 +0000 (17:14 +0000)]
OpenMP Support

13 years agoincremental commit of 32-bit ppc64_linux port to pass tests 1_22, 12_1 to 12_8, 13_1...
ssuen [Tue, 17 Jul 2007 17:11:32 +0000 (17:11 +0000)]
incremental commit of 32-bit ppc64_linux port to pass tests 1_22, 12_1 to 12_8, 13_1, 14_1 and 15_1.
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
implement tc_lock_lock() and atomic_set()

13 years agoincremental commit of 32-bit ppc64_linux port to pass tests 1_22, 12_1 to 12_8, 13_1...
ssuen [Tue, 17 Jul 2007 17:11:26 +0000 (17:11 +0000)]
incremental commit of 32-bit ppc64_linux port to pass tests 1_22, 12_1 to 12_8, 13_1, 14_1 and 15_1.
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
pad start of inferior RPC code with NOOPs for bug_syscall_changepc_rewind

13 years agoincremental commit of 32-bit ppc64_linux port to pass tests 1_22, 12_1 to 12_8, 13_1...
ssuen [Tue, 17 Jul 2007 17:11:25 +0000 (17:11 +0000)]
incremental commit of 32-bit ppc64_linux port to pass tests 1_22, 12_1 to 12_8, 13_1, 14_1 and 15_1.
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
implement emitFuncJump() and writeFunctionPtr()

13 years agoincremental commit of 32-bit ppc64_linux port to pass tests 1_22, 12_1 to 12_8, 13_1...
ssuen [Tue, 17 Jul 2007 17:11:24 +0000 (17:11 +0000)]
incremental commit of 32-bit ppc64_linux port to pass tests 1_22, 12_1 to 12_8, 13_1, 14_1 and 15_1.
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Linuxes share the code for BPatch_funcJumpExpr::BPatch_funcJumpExprInt()

13 years agoincremental commit of 32-bit ppc64_linux port to pass tests 1_22, 12_1 to 12_8, 13_1...
ssuen [Tue, 17 Jul 2007 17:11:23 +0000 (17:11 +0000)]
incremental commit of 32-bit ppc64_linux port to pass tests 1_22, 12_1 to 12_8, 13_1, 14_1 and 15_1.
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PowerPC Linux has the bug_syscall_changepc_rewind bug

13 years agoInitial Check-in
rutar [Tue, 17 Jul 2007 16:45:51 +0000 (16:45 +0000)]
Initial Check-in

13 years agofix dyninst build on x86_64
jaw [Tue, 17 Jul 2007 03:51:59 +0000 (03:51 +0000)]
fix dyninst build on x86_64

13 years agoFixed declaration of static template members
tugrul [Fri, 13 Jul 2007 20:50:17 +0000 (20:50 +0000)]
Fixed declaration of static template members

13 years agoExplicit instantiation of BPatch_annotatable<instruction>
tugrul [Thu, 12 Jul 2007 17:04:59 +0000 (17:04 +0000)]
Explicit instantiation of BPatch_annotatable<instruction>

13 years agoUpdating readWriteRegisters with annotation framework
tugrul [Thu, 12 Jul 2007 17:03:59 +0000 (17:03 +0000)]
Updating readWriteRegisters with annotation framework

13 years agoMaking instruction class annotatable
tugrul [Thu, 12 Jul 2007 17:03:02 +0000 (17:03 +0000)]
Making instruction class annotatable

13 years agoBug fix
tugrul [Thu, 12 Jul 2007 17:02:25 +0000 (17:02 +0000)]
Bug fix

13 years agoincremental commit of 32-bit ppc64_linux port - - - - - - - - - - - - -
ssuen [Wed, 11 Jul 2007 17:58:24 +0000 (17:58 +0000)]
incremental commit of 32-bit ppc64_linux port  - - - - - - - - - - - - -
ppc64 Linux also has /proc/PID/exe

13 years agoincremental commit of 32-bit ppc64_linux port - - - - - - - - - - - - -
ssuen [Wed, 11 Jul 2007 17:58:23 +0000 (17:58 +0000)]
incremental commit of 32-bit ppc64_linux port  - - - - - - - - - - - - -
provide minimal mmap() address-range restrictions

13 years agoincremental commit of 32-bit ppc64_linux port - - - - - - - - - - - - -
ssuen [Wed, 11 Jul 2007 17:58:22 +0000 (17:58 +0000)]
incremental commit of 32-bit ppc64_linux port  - - - - - - - - - - - - -
implement return from a NOP function by setting PC to saved return address

13 years agoincremental commit of 32-bit ppc64_linux port - - - - - - - - - - - - -
ssuen [Wed, 11 Jul 2007 17:58:21 +0000 (17:58 +0000)]
incremental commit of 32-bit ppc64_linux port  - - - - - - - - - - - - -
region_hi() and region_lo() take branch-range limitations into account

13 years agoincremental commit of 32-bit ppc64_linux port - - - - - - - - - - - - -
ssuen [Wed, 11 Jul 2007 17:58:20 +0000 (17:58 +0000)]
incremental commit of 32-bit ppc64_linux port  - - - - - - - - - - - - -
implement stack walk, call to dlopen() and call to do_dlopen()

13 years agoincremental commit of 32-bit ppc64_linux port - - - - - - - - - - - - -
ssuen [Wed, 11 Jul 2007 17:58:19 +0000 (17:58 +0000)]
incremental commit of 32-bit ppc64_linux port  - - - - - - - - - - - - -
POWER and PowerPC divide instructions use different extended opcodes

13 years agoincremental commit of 32-bit ppc64_linux port - - - - - - - - - - - - -
ssuen [Wed, 11 Jul 2007 17:58:17 +0000 (17:58 +0000)]
incremental commit of 32-bit ppc64_linux port  - - - - - - - - - - - - -
allow relocation of Linux system calls

13 years agoRemoved unnecessary name declaration
tugrul [Thu, 5 Jul 2007 22:17:26 +0000 (22:17 +0000)]
Removed unnecessary name declaration

13 years agoIncluded common/h/Dictionary.h and common/h/String.h just in case
tugrul [Thu, 5 Jul 2007 16:02:16 +0000 (16:02 +0000)]
Included common/h/Dictionary.h and common/h/String.h just in case

13 years agoIncluding BPatch_annotatable.C and BPatch_annotatable.h into compilation process
tugrul [Thu, 5 Jul 2007 16:01:12 +0000 (16:01 +0000)]
Including BPatch_annotatable.C and BPatch_annotatable.h into compilation process

13 years agoIncluding BPatch_annotatable.C into compilation process
tugrul [Thu, 5 Jul 2007 16:00:42 +0000 (16:00 +0000)]
Including BPatch_annotatable.C into compilation process

13 years agoRemoved a commented line that caused build failures
tugrul [Tue, 3 Jul 2007 14:16:41 +0000 (14:16 +0000)]
Removed a commented line that caused build failures

13 years ago*** empty log message ***
legendre [Mon, 2 Jul 2007 22:23:58 +0000 (22:23 +0000)]
*** empty log message ***

13 years agoRemoved unused nmake.module.tmpl files
legendre [Mon, 2 Jul 2007 22:17:59 +0000 (22:17 +0000)]
Removed unused nmake.module.tmpl files

13 years agoRemoved extra space from Symtab version number define
legendre [Mon, 2 Jul 2007 22:17:58 +0000 (22:17 +0000)]
Removed extra space from Symtab version number define

13 years agoDon't inline methods in DLLEXPORT'd classes. It makes the Windows linker sad.
legendre [Mon, 2 Jul 2007 22:17:56 +0000 (22:17 +0000)]
Don't inline methods in DLLEXPORT'd classes. It makes the Windows linker sad.

13 years agoDeal with bad path names that are handed in by Windows debugging interface.
legendre [Mon, 2 Jul 2007 22:17:55 +0000 (22:17 +0000)]
Deal with bad path names that are handed in by Windows debugging interface.

13 years agoAdd 'external' directory to include file search path
legendre [Mon, 2 Jul 2007 22:17:54 +0000 (22:17 +0000)]
Add 'external' directory to include file search path

13 years agoinverts effect of the previous commit
tugrul [Mon, 2 Jul 2007 20:11:44 +0000 (20:11 +0000)]
inverts effect of the previous commit

13 years agoinverts the effects of the previous commit
tugrul [Mon, 2 Jul 2007 20:11:09 +0000 (20:11 +0000)]
inverts the effects of the previous commit

13 years agoSunlung noticed that a dereference of 0 was segfaulting on Linux; for
bernat [Mon, 2 Jul 2007 18:31:03 +0000 (18:31 +0000)]
Sunlung noticed that a dereference of 0 was segfaulting on Linux; for
not-at-all understood reasons, the code had been working on AIX. Fixed
by checking for NULL.

13 years agoTiny bug fix
tugrul [Mon, 2 Jul 2007 18:25:35 +0000 (18:25 +0000)]
Tiny bug fix

13 years agoIncluded files for annotation framework
tugrul [Mon, 2 Jul 2007 17:31:36 +0000 (17:31 +0000)]
Included files for annotation framework

13 years agoInitial checkin of Annotation framework
tugrul [Mon, 2 Jul 2007 17:29:34 +0000 (17:29 +0000)]
Initial checkin of Annotation framework

13 years agoincremental commit of ppc64_linux port - - - - - - - - - - - - - - - - -
ssuen [Mon, 2 Jul 2007 16:45:58 +0000 (16:45 +0000)]
incremental commit of ppc64_linux port  - - - - - - - - - - - - - - - - -
switching to preprocessed versions of assembler files

13 years agoincremental commit of ppc64_linux port - - - - - - - - - - - - - - - - -
ssuen [Mon, 2 Jul 2007 16:45:47 +0000 (16:45 +0000)]
incremental commit of ppc64_linux port  - - - - - - - - - - - - - - - - -

13 years agoAdding shared_ptr header files back in.
bernat [Tue, 26 Jun 2007 21:36:12 +0000 (21:36 +0000)]
Adding shared_ptr header files back in.

13 years agoDead code removal - - - - - - - - - - - - - - - - - - - - - - - - - - -
bernat [Tue, 26 Jun 2007 14:54:55 +0000 (14:54 +0000)]
Dead code removal  - - - - - - - - - - - - - - - - - - - - - - - - - - -
Remove partial implementations of system call trapping

13 years agoDead code removal - - - - - - - - - - - - - - - - - - - - - - - - - - -
bernat [Tue, 26 Jun 2007 14:54:47 +0000 (14:54 +0000)]
Dead code removal  - - - - - - - - - - - - - - - - - - - - - - - - - - -
Wrap functions in cap_syscall_trap define

13 years agoDead code removal - - - - - - - - - - - - - - - - - - - - - - - - - - -
bernat [Tue, 26 Jun 2007 14:54:46 +0000 (14:54 +0000)]
Dead code removal  - - - - - - - - - - - - - - - - - - - - - - - - - - -
Add cap_syscall_trap

13 years agoadd ppc64_linux platform - - - - - - - - - - - - - - - - - - - - - - - -
ssuen [Wed, 20 Jun 2007 21:19:11 +0000 (21:19 +0000)]
add ppc64_linux platform  - - - - - - - - - - - - - - - - - - - - - - - -

13 years agoadd ppc64_linux platform - - - - - - - - - - - - - - - - - - - - - - - -
ssuen [Wed, 20 Jun 2007 20:49:36 +0000 (20:49 +0000)]
add ppc64_linux platform  - - - - - - - - - - - - - - - - - - - - - - - -

13 years agoSeveral gap and jump table parsing fixes - - - - - - - - - - - - - - - -
nater [Fri, 15 Jun 2007 21:30:11 +0000 (21:30 +0000)]
Several gap and jump table parsing fixes  - - - - - - - - - - - - - - - -
Re-enable recording of image-funcs in by-address hash table

13 years agoSeveral gap and jump table parsing fixes - - - - - - - - - - - - - - - -
nater [Fri, 15 Jun 2007 21:30:10 +0000 (21:30 +0000)]
Several gap and jump table parsing fixes  - - - - - - - - - - - - - - - -
Fix holes in gap parsing coverage, change name of gap functions.

13 years agoSeveral gap and jump table parsing fixes - - - - - - - - - - - - - - - -
nater [Fri, 15 Jun 2007 21:30:09 +0000 (21:30 +0000)]
Several gap and jump table parsing fixes  - - - - - - - - - - - - - - - -
Search for CMP instruction in jump table heuristic was flawed, leading
to incorrect estimation of jump table size. There may be intervening
instructions between the CMP and later JCC.

13 years agoFix a bug in the tests
bernat [Wed, 13 Jun 2007 18:51:31 +0000 (18:51 +0000)]
Fix a bug in the tests

13 years agoUpdate Makefiles to compile with Boost
bernat [Wed, 13 Jun 2007 18:51:28 +0000 (18:51 +0000)]
Update Makefiles to compile with Boost

13 years agoMove from AstNode * to AstNodePtr, remove circular #include dependencies
bernat [Wed, 13 Jun 2007 18:50:19 +0000 (18:50 +0000)]
Move from AstNode * to AstNodePtr, remove circular #include dependencies

13 years agoUpdate Makefiles
bernat [Wed, 13 Jun 2007 18:50:13 +0000 (18:50 +0000)]
Update Makefiles

13 years agoAdd AstNodePtr *ast_wrapper instead of AstNode *
bernat [Wed, 13 Jun 2007 18:50:12 +0000 (18:50 +0000)]
Add AstNodePtr *ast_wrapper instead of AstNode *

13 years agoAdd $(TO_CORE)/external as a header file source
bernat [Wed, 13 Jun 2007 18:50:11 +0000 (18:50 +0000)]
Add $(TO_CORE)/external as a header file source

13 years agoUpdate Windows packager for Dyninst 5.1 release. - - - - - - - - - - - -
rchen [Wed, 13 Jun 2007 06:30:20 +0000 (06:30 +0000)]
Update Windows packager for Dyninst 5.1 release.  - - - - - - - - - - - -
Update vdproj files to reflect new packager requirements for 5.1 release.

13 years agoDon't reference paths in public symtab files off of core Release5_1
legendre [Thu, 31 May 2007 14:24:46 +0000 (14:24 +0000)]
Don't reference paths in public symtab files off of core

13 years agoUpdate copyright notice to LGPL
legendre [Wed, 30 May 2007 19:19:37 +0000 (19:19 +0000)]
Update copyright notice to LGPL

13 years agoFix some buggy optimized x86_64 instruction generation code that was revealed
rchen [Fri, 25 May 2007 21:13:57 +0000 (21:13 +0000)]
Fix some buggy optimized x86_64 instruction generation code that was revealed
by a previous commit.  - - - - - - - - - - - - - - - - - - - - - - - - -
Check size of address and immediate in optimzed assignment.

13 years agoFix some buggy optimized x86_64 instruction generation code that was revealed
rchen [Fri, 25 May 2007 21:13:53 +0000 (21:13 +0000)]
Fix some buggy optimized x86_64 instruction generation code that was revealed
by a previous commit.  - - - - - - - - - - - - - - - - - - - - - - - - -
Call emitMovImmToMem() instead of emitMovImmToRM() from emitStoreImm().

13 years agoFix some buggy optimized x86_64 instruction generation code that was revealed
rchen [Fri, 25 May 2007 21:13:50 +0000 (21:13 +0000)]
Fix some buggy optimized x86_64 instruction generation code that was revealed
by a previous commit.  - - - - - - - - - - - - - - - - - - - - - - - - -
Make emitMovImmToMem() generate x86/x86_64 compatible MOV r/m32, imm32

13 years agoFix bug #772. Enables correct writing of 32 and 64 bit values in mutatee.
rchen [Tue, 22 May 2007 21:05:48 +0000 (21:05 +0000)]
Fix bug #772.  Enables correct writing of 32 and 64 bit values in mutatee.
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Use newly passed size parameter in store methods.  Fix 64-bit value check.

13 years agoFix bug #772. Enables correct writing of 32 and 64 bit values in mutatee.
rchen [Tue, 22 May 2007 21:05:39 +0000 (21:05 +0000)]
Fix bug #772.  Enables correct writing of 32 and 64 bit values in mutatee.
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Update headers to accont for size in emitter base class and subclasses.

13 years agoFix bug #772. Enables correct writing of 32 and 64 bit values in mutatee.
rchen [Tue, 22 May 2007 21:05:35 +0000 (21:05 +0000)]
Fix bug #772.  Enables correct writing of 32 and 64 bit values in mutatee.
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Fix logic error.

13 years agoinstPoint.C, instPoint.h
bernat [Tue, 22 May 2007 19:42:02 +0000 (19:42 +0000)]
instPoint.C, instPoint.h
  - Provide a "batch" mechanism for updateInstances which works around
    a nasty O(n**2) problem during function relocation.
reloc-func.C
  - Use aforementioned mechanism
symtab.C
  - Remove some minor memory leaks

13 years agoMoved the process::hasPassedMain to latter in the startup sequence
legendre [Mon, 21 May 2007 17:12:46 +0000 (17:12 +0000)]
Moved the process::hasPassedMain to latter in the startup sequence

13 years agoDon't clean-up the dynamic linker Dyn_Symtab object after use, it may be
legendre [Mon, 21 May 2007 17:12:44 +0000 (17:12 +0000)]
Don't clean-up the dynamic linker Dyn_Symtab object after use, it may be
shared

13 years agoWhen libunwind fails to give us debug info , we no longer fail fatally, we simply...
bill [Fri, 18 May 2007 18:49:14 +0000 (18:49 +0000)]
When libunwind fails to give us debug info , we no longer fail fatally, we simply warn the user and move on with instrumentation.

--BW