GB2400939B - Partial dead code elimination optimizations for program code conversion - Google Patents

Partial dead code elimination optimizations for program code conversion

Info

Publication number
GB2400939B
GB2400939B GB0322323A GB0322323A GB2400939B GB 2400939 B GB2400939 B GB 2400939B GB 0322323 A GB0322323 A GB 0322323A GB 0322323 A GB0322323 A GB 0322323A GB 2400939 B GB2400939 B GB 2400939B
Authority
GB
United Kingdom
Prior art keywords
optimizations
elimination
program code
partial dead
conversion
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
GB0322323A
Other versions
GB2400939A (en
GB0322323D0 (en
Inventor
Ian Graham Bolton
David Ung
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Transitive Ltd
Original Assignee
Transitive Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from GBGB0309056.0A external-priority patent/GB0309056D0/en
Application filed by Transitive Ltd filed Critical Transitive Ltd
Publication of GB0322323D0 publication Critical patent/GB0322323D0/en
Priority to US10/749,052 priority Critical patent/US7543284B2/en
Priority to TW093111117A priority patent/TWI387927B/en
Priority to PCT/GB2004/001722 priority patent/WO2004095263A2/en
Publication of GB2400939A publication Critical patent/GB2400939A/en
Application granted granted Critical
Publication of GB2400939B publication Critical patent/GB2400939B/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45516Runtime code conversion or optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/443Optimisation
    • G06F8/4434Reducing the memory space required by the program code
    • G06F8/4435Detection or removal of dead or redundant code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3854Instruction completion, e.g. retiring, committing or graduating
    • G06F9/3858Result writeback, i.e. updating the architectural state or memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Devices For Executing Special Programs (AREA)
GB0322323A 2003-04-22 2003-09-24 Partial dead code elimination optimizations for program code conversion Expired - Lifetime GB2400939B (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US10/749,052 US7543284B2 (en) 2003-04-22 2003-12-30 Partial dead code elimination optimizations for program code conversion
TW093111117A TWI387927B (en) 2003-04-22 2004-04-21 Partial dead code elimination optimizations for program code conversion
PCT/GB2004/001722 WO2004095263A2 (en) 2003-04-22 2004-04-22 Partial dead code elimination optimizations for program code conversion

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GBGB0309056.0A GB0309056D0 (en) 2003-04-22 2003-04-22 Block translation optimizations for program code conversion
GBGB0315164.4A GB0315164D0 (en) 2003-04-22 2003-06-30 Block translation optimizations for program code conversion

Publications (3)

Publication Number Publication Date
GB0322323D0 GB0322323D0 (en) 2003-10-22
GB2400939A GB2400939A (en) 2004-10-27
GB2400939B true GB2400939B (en) 2005-11-16

Family

ID=29252470

Family Applications (3)

Application Number Title Priority Date Filing Date
GB0320718A Expired - Lifetime GB2400938B (en) 2003-04-22 2003-09-04 Method and apparatus for performing lazy byteswapping optimizations during program code conversion
GB0320716A Expired - Lifetime GB2400937B (en) 2003-04-22 2003-09-04 Method and apparatus for performing interpreter optimizations during program code conversion
GB0322323A Expired - Lifetime GB2400939B (en) 2003-04-22 2003-09-24 Partial dead code elimination optimizations for program code conversion

Family Applications Before (2)

Application Number Title Priority Date Filing Date
GB0320718A Expired - Lifetime GB2400938B (en) 2003-04-22 2003-09-04 Method and apparatus for performing lazy byteswapping optimizations during program code conversion
GB0320716A Expired - Lifetime GB2400937B (en) 2003-04-22 2003-09-04 Method and apparatus for performing interpreter optimizations during program code conversion

Country Status (2)

Country Link
GB (3) GB2400938B (en)
HK (2) HK1066292A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7934204B2 (en) 2003-07-15 2011-04-26 International Business Machines Corporation Partitioning code in program code conversion
GB0316532D0 (en) * 2003-07-15 2003-08-20 Transitive Ltd Method and apparatus for partitioning code in program code conversion
EP1752874A1 (en) 2005-07-19 2007-02-14 Alcatel Adaptive evolutionary computer software product

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5966539A (en) * 1994-03-01 1999-10-12 Digital Equipment Corporation Link time optimization with translation to intermediate program and following optimization techniques including program analysis code motion live variable set generation order analysis, dead code elimination and load invariant analysis
US6484188B1 (en) * 1999-12-30 2002-11-19 Intel Corporation Optimization of garbage collection code in the context of raw native interface function calls in the java programming language

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5507030A (en) * 1991-03-07 1996-04-09 Digitial Equipment Corporation Successive translation, execution and interpretation of computer program having code at unknown locations due to execution transfer instructions having computed destination addresses
US5970236A (en) * 1995-11-14 1999-10-19 Compaq Computer Corporation Circuit for selectively performing data format conversion
WO1997044739A1 (en) * 1996-05-23 1997-11-27 Advanced Micro Devices, Inc. Apparatus for converting data between different endian formats and system and method employing same
US6880152B1 (en) * 1999-10-13 2005-04-12 Transmeta Corporation Method of determining a mode of code generation
GB2367652B (en) * 2000-10-05 2004-08-11 Advanced Risc Mach Ltd Scheduling control within a system having mixed hardware and software based instruction execution

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5966539A (en) * 1994-03-01 1999-10-12 Digital Equipment Corporation Link time optimization with translation to intermediate program and following optimization techniques including program analysis code motion live variable set generation order analysis, dead code elimination and load invariant analysis
US6484188B1 (en) * 1999-12-30 2002-11-19 Intel Corporation Optimization of garbage collection code in the context of raw native interface function calls in the java programming language

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Partial Dead Code Elimination" KNOOP et al, ACM Sigplan Notices 29 (1994) June, No. 6, New York, US *

Also Published As

Publication number Publication date
GB0320718D0 (en) 2003-10-08
GB2400939A (en) 2004-10-27
GB2400938B (en) 2005-07-06
HK1066292A1 (en) 2005-03-18
GB0322323D0 (en) 2003-10-22
GB2400937B (en) 2005-05-18
GB2400938A (en) 2004-10-27
HK1066290A1 (en) 2005-03-18
GB0320716D0 (en) 2003-10-08
GB2400937A (en) 2004-10-27

Similar Documents

Publication Publication Date Title
GB0315164D0 (en) Block translation optimizations for program code conversion
IL174724A0 (en) Novel hypocholesterolemic compounds
EP1649344A4 (en) Sql code generation for heterogeneous environment
GB0302718D0 (en) Condition code flag emulation for program code conversion
IL171894A0 (en) New azetidine compounds
GB0215316D0 (en) Authorisation code
EP1596860A4 (en) Novel compounds
GB0327542D0 (en) Double conversion tuner
TWI320636B (en) Method for compressing instruction code
IL190538A0 (en) Two-part code
GB2400939B (en) Partial dead code elimination optimizations for program code conversion
HK1077650A1 (en) Improved architecture for generating intermediate representations for program code conversion
GB0300567D0 (en) Composter
TW569939U (en) Reinforced grid
EP1599174A4 (en) Novel compounds
SG122052A1 (en) Architecture specific code
GB2416268B (en) Supplementary dialling code
GB0412130D0 (en) Code generator
GB0310859D0 (en) Conversion
PL375406A1 (en) Benzoylpyrazolones substituted by 3-aminocarbonyl
TW576292U (en) Improved stapler structure
GB0426064D0 (en) Catalyst
TW545351U (en) Improved structure for stapler
GB0205038D0 (en) File conversion
PL360071A1 (en) Method for waste utilization

Legal Events

Date Code Title Description
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1066291

Country of ref document: HK

732E Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977)

Free format text: REGISTERED BETWEEN 20090702 AND 20090708

REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1066291

Country of ref document: HK

PE20 Patent expired after termination of 20 years

Expiry date: 20230923