WO2005006120A3 - An intermediate representation for multiple exception handling models - Google Patents

An intermediate representation for multiple exception handling models Download PDF

Info

Publication number
WO2005006120A3
WO2005006120A3 PCT/US2004/015965 US2004015965W WO2005006120A3 WO 2005006120 A3 WO2005006120 A3 WO 2005006120A3 US 2004015965 W US2004015965 W US 2004015965W WO 2005006120 A3 WO2005006120 A3 WO 2005006120A3
Authority
WO
WIPO (PCT)
Prior art keywords
code
multiple different
exception handling
instructions
source code
Prior art date
Application number
PCT/US2004/015965
Other languages
French (fr)
Other versions
WO2005006120A2 (en
Inventor
Vinod K Grover
Akella V S Sastry
Original Assignee
Microsoft Corp
Vinod K Grover
Akella V S Sastry
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
Application filed by Microsoft Corp, Vinod K Grover, Akella V S Sastry filed Critical Microsoft Corp
Priority to EP04776072.3A priority Critical patent/EP1636701B1/en
Priority to JP2006517131A priority patent/JP2007521568A/en
Publication of WO2005006120A2 publication Critical patent/WO2005006120A2/en
Publication of WO2005006120A3 publication Critical patent/WO2005006120A3/en
Priority to KR1020057024967A priority patent/KR101099212B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • G06F8/423Preprocessors

Abstract

As described herein, an intermediate representation of a source code file may be used to explicitly express exception handling control flow prior to generating object code for the source code. As further described herein, a single uniform set of instructions of the intermediate representation may be used for expressing multiple different exception handling mechanisms related to multiple different programming languages. The intermediate form of the exception (10) handling instructions may be generated by translating an intermediate language representation of the source code file. Representations of the source code in multiple different intermediate languages may be translated to a single uniform set of instructions of the intermediate representation. The intermediate form of the exception handling instructions may then be used by software development tools for such tasks as code generation, code optimization, code analysis etc. Thus, the same methods for code optimizations, analysis and generation may be used for intermediate representations of multiple different languages.
PCT/US2004/015965 2003-06-26 2004-05-21 An intermediate representation for multiple exception handling models WO2005006120A2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP04776072.3A EP1636701B1 (en) 2003-06-26 2004-05-21 An intermediate representation for multiple exception handling models
JP2006517131A JP2007521568A (en) 2003-06-26 2004-05-21 Intermediate representation of multiple exception handling models
KR1020057024967A KR101099212B1 (en) 2003-06-26 2005-12-26 An intermediate representation for multiple exception handling models

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/609,275 2003-06-26
US10/609,275 US7120898B2 (en) 2003-06-26 2003-06-26 Intermediate representation for multiple exception handling models

Publications (2)

Publication Number Publication Date
WO2005006120A2 WO2005006120A2 (en) 2005-01-20
WO2005006120A3 true WO2005006120A3 (en) 2005-11-03

Family

ID=33540823

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2004/015965 WO2005006120A2 (en) 2003-06-26 2004-05-21 An intermediate representation for multiple exception handling models

Country Status (7)

Country Link
US (2) US7120898B2 (en)
EP (1) EP1636701B1 (en)
JP (1) JP2007521568A (en)
KR (1) KR101099212B1 (en)
CN (1) CN100385399C (en)
TW (1) TWI340325B (en)
WO (1) WO2005006120A2 (en)

Families Citing this family (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2411990B (en) * 2003-05-02 2005-11-09 Transitive Ltd Improved architecture for generating intermediate representations for program code conversion
US20100145752A1 (en) 2004-05-11 2010-06-10 Davis James E Adaptable workflow and communications system
US7086041B2 (en) * 2003-06-27 2006-08-01 Microsoft Corporation Extensible type system for representing and checking consistency of program components during the process of compilation
US7685581B2 (en) * 2003-06-27 2010-03-23 Microsoft Corporation Type system for representing and checking consistency of heterogeneous program components during the process of compilation
US7707566B2 (en) * 2003-06-26 2010-04-27 Microsoft Corporation Software development infrastructure
US7120898B2 (en) * 2003-06-26 2006-10-10 Microsoft Corporation Intermediate representation for multiple exception handling models
US7305666B2 (en) * 2003-07-23 2007-12-04 Microsoft Corporation Description language for an extensible compiler and tools infrastructure
US7559050B2 (en) * 2003-06-30 2009-07-07 Microsoft Corporation Generating software development tools via target architecture specification
US7788652B2 (en) * 2003-06-27 2010-08-31 Microsoft Corporation Representing type information in a compiler and programming tools framework
US7823139B2 (en) * 2003-07-19 2010-10-26 Bea Systems, Inc. Method and system for translating programming languages
US7810080B2 (en) * 2003-09-15 2010-10-05 Thomas Plum Automated safe secure techniques for eliminating undefined behavior in computer software
US7669193B1 (en) * 2003-09-25 2010-02-23 Lantronix, Inc. Program transformation using flow-sensitive type constraint analysis
US7577961B1 (en) * 2004-08-25 2009-08-18 Sun Microsystems, Inc. Methods and apparatus for exception-based programming
TWI283192B (en) * 2004-12-21 2007-07-01 Ind Tech Res Inst A flat-plate type static dust-connecting device
US7493605B2 (en) * 2004-12-29 2009-02-17 Mainsoft R&D Ltd Method and a software product for adapting a .Net framework compliant reflection mechanism to a java environment
US7631304B2 (en) * 2005-01-14 2009-12-08 Bearman Ian M Software tool with modeling of asynchronous program flow
KR100763177B1 (en) * 2005-04-21 2007-10-04 삼성전자주식회사 Method for executing Java virtual machine instructions, and apparatus for the same
US20070055964A1 (en) * 2005-09-06 2007-03-08 Morfik Technology Pty. Ltd. System and method for synthesizing object-oriented high-level code into browser-side javascript
US7757221B2 (en) * 2005-09-30 2010-07-13 Intel Corporation Apparatus and method for dynamic binary translator to support precise exceptions with minimal optimization constraints
US8095921B2 (en) * 2005-10-12 2012-01-10 International Business Machines Corporation Identifying code that wastes time switching tasks
EP1783604A3 (en) * 2005-11-07 2007-10-03 Slawomir Adam Janczewski Object-oriented, parallel language, method of programming and multi-processor computer
KR100771057B1 (en) * 2005-12-26 2007-10-29 주식회사 신지소프트 Device and method for transforming WIPI into intermediate language
US7627863B2 (en) * 2006-01-13 2009-12-01 Microsoft Corporation Typed intermediate language support for languages with multiple inheritance
US8615743B2 (en) * 2006-02-27 2013-12-24 Microsoft Corporation Adaptive compiled code
US8108844B2 (en) 2006-06-20 2012-01-31 Google Inc. Systems and methods for dynamically choosing a processing element for a compute kernel
US8024708B2 (en) 2006-06-20 2011-09-20 Google Inc. Systems and methods for debugging an application running on a parallel-processing computer system
US8136104B2 (en) 2006-06-20 2012-03-13 Google Inc. Systems and methods for determining compute kernels for an application in a parallel-processing computer system
US8261270B2 (en) * 2006-06-20 2012-09-04 Google Inc. Systems and methods for generating reference results using a parallel-processing computer system
US7814486B2 (en) * 2006-06-20 2010-10-12 Google Inc. Multi-thread runtime system
US8136102B2 (en) 2006-06-20 2012-03-13 Google Inc. Systems and methods for compiling an application for a parallel-processing computer system
US8381202B2 (en) * 2006-06-20 2013-02-19 Google Inc. Runtime system for executing an application in a parallel-processing computer system
US8375368B2 (en) * 2006-06-20 2013-02-12 Google Inc. Systems and methods for profiling an application running on a parallel-processing computer system
US8146066B2 (en) * 2006-06-20 2012-03-27 Google Inc. Systems and methods for caching compute kernels for an application running on a parallel-processing computer system
US8443348B2 (en) 2006-06-20 2013-05-14 Google Inc. Application program interface of a parallel-processing computer system that supports multiple programming languages
US8453132B2 (en) * 2006-07-28 2013-05-28 Hewlett-Packard Development Company, L.P. System and method for recompiling code based on locality domain and thread affinity in NUMA computer systems
US8190661B2 (en) * 2007-01-24 2012-05-29 Microsoft Corporation Using virtual repository items for customized display
US7805456B2 (en) * 2007-02-05 2010-09-28 Microsoft Corporation Query pattern to enable type flow of element types
US7865533B2 (en) * 2007-02-05 2011-01-04 Microsoft Corporation Compositional query comprehensions
US8145673B2 (en) 2007-02-16 2012-03-27 Microsoft Corporation Easily queriable software repositories
US20080201330A1 (en) * 2007-02-16 2008-08-21 Microsoft Corporation Software repositories
US7831625B2 (en) * 2007-05-16 2010-11-09 Microsoft Corporation Data model for a common language
US7716531B2 (en) * 2007-06-29 2010-05-11 International Business Machines Corporation System and method for fault mapping of exceptions across programming models
US7814375B2 (en) * 2007-08-29 2010-10-12 International Business Machines Corporation Fault discovery and selection apparatus and method
US8181167B2 (en) * 2008-01-09 2012-05-15 Kan Zhao Method and system for presenting and analyzing software source code through intermediate representation
US8250544B2 (en) * 2008-03-05 2012-08-21 Microsoft Corporation Annotating exception information in a computer program
US8095963B2 (en) 2008-04-30 2012-01-10 Microsoft Corporation Securing resource stores with claims-based security
US8099721B2 (en) * 2008-06-17 2012-01-17 Microsoft Corporation Parsing of declarations in all branches of preprocessor conditionals
US8875111B2 (en) * 2009-04-23 2014-10-28 Microsoft Corporation Intermediate language representation and modification
US8667474B2 (en) * 2009-06-19 2014-03-04 Microsoft Corporation Generation of parallel code representations
US8095571B2 (en) * 2009-06-22 2012-01-10 Microsoft Corporation Partitioning modeling platform data
US8473900B2 (en) * 2009-07-01 2013-06-25 Advanced Micro Devices, Inc. Combining classes referenced by immutable classes into a single synthetic class
US8612928B2 (en) 2010-04-07 2013-12-17 Microsoft Corporation Generating exception-based component models from non-exception-based models
US9697021B2 (en) 2010-04-30 2017-07-04 Microsoft Technology Licensing, Llc Modifiable high-level intermediate representation of source code
US8510724B2 (en) * 2010-12-17 2013-08-13 Microsoft Corporation Reconstructing program control flow
US20130159685A1 (en) * 2011-12-15 2013-06-20 Advanced Micro Devices, Inc. Control flow-based approach in implementing exception handling on a graphics processing unit
JP5891976B2 (en) * 2012-07-03 2016-03-23 富士通株式会社 Compile execution / management method, apparatus, and program
CN103019830B (en) * 2012-12-31 2016-09-21 深圳Tcl新技术有限公司 Realize the method and device of browser script language execution fault tolerance
CN103116714A (en) * 2013-03-01 2013-05-22 中标软件有限公司 Double-process protection method for executable files of Windows platform
US9116714B2 (en) * 2013-07-10 2015-08-25 Tencent Technology (Shenzhen) Company Limited Methods and systems for file processing
US9329844B2 (en) * 2014-05-30 2016-05-03 Apple Inc. Programming system and language for application development
US11442739B2 (en) * 2019-09-16 2022-09-13 International Business Machines Carporation Exception handling
US11061653B2 (en) * 2019-10-30 2021-07-13 International Business Machines Corporation Dynamic compiling for conditional statements during execution
CN113254023B (en) * 2021-05-14 2023-08-11 网易(杭州)网络有限公司 Object reading method and device and electronic equipment
CN113326031B (en) * 2021-05-28 2023-08-22 网易(杭州)网络有限公司 Attribute acquisition method and device

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5628016A (en) * 1994-06-15 1997-05-06 Borland International, Inc. Systems and methods and implementing exception handling using exception registration records stored in stack memory
US5918235A (en) * 1997-04-04 1999-06-29 Hewlett-Packard Company Object surrogate with active computation and probablistic counter
US5966702A (en) * 1997-10-31 1999-10-12 Sun Microsystems, Inc. Method and apparatus for pre-processing and packaging class files
US6149318A (en) * 1997-04-15 2000-11-21 Samuel C. Kendall Link-time and run-time error detection, and program instrumentation
US6247169B1 (en) * 1996-11-04 2001-06-12 Sun Microsystems, Inc. Structured exception-handling methods, apparatus, and computer program products
US6289446B1 (en) * 1998-09-29 2001-09-11 Axis Ab Exception handling utilizing call instruction with context information
US6412109B1 (en) * 1999-01-29 2002-06-25 Sun Microsystems, Inc. Method for optimizing java bytecodes in the presence of try-catch blocks
US6421667B1 (en) * 1996-06-11 2002-07-16 Edgar F. Codd Delta model processing logic representation and execution system
US20040049769A1 (en) * 2002-09-05 2004-03-11 Guei-Yuan Lueh Methods and apparatus for optimizing the operating speed and size of a computer program

Family Cites Families (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4197978A (en) * 1978-06-29 1980-04-15 The Boeing Company Method of making an integral structural member
US4734854A (en) * 1985-10-08 1988-03-29 American Telephone And Telegraph Company System for generating software source code components
CA1248238A (en) * 1985-10-17 1989-01-03 Francis D. Lawlor Compiler including retargetable data generation
US5339419A (en) 1990-06-25 1994-08-16 Hewlett-Packard Company ANDF compiler using the HPcode-plus compiler intermediate language
US5659753A (en) * 1991-02-27 1997-08-19 Digital Equipment Corporation Interface for symbol table construction in a multilanguage optimizing compiler
US5598560A (en) * 1991-03-07 1997-01-28 Digital Equipment Corporation Tracking condition codes in translation code for different machine architectures
US5488727A (en) * 1991-09-30 1996-01-30 International Business Machines Corporation Methods to support multimethod function overloading with compile-time type checking
CA2102089C (en) 1993-10-29 1999-05-25 David M. Gillies Recompilation of computer programs for enhanced optimization
US5761511A (en) 1994-01-28 1998-06-02 Sun Microsystems, Inc. Method and apparatus for a type-safe framework for dynamically extensible objects
US5742828A (en) 1994-08-03 1998-04-21 Microsoft Corporation Compiler and method for evaluation of foreign syntax expressions in source code
US5778227A (en) 1995-08-01 1998-07-07 Intergraph Corporation System for adding attributes to an object at run time in an object oriented computer environment
US5754858A (en) * 1996-05-01 1998-05-19 Microsoft Corporation Customizable application project generation process and system
US6463581B1 (en) * 1996-10-03 2002-10-08 International Business Machines Corporation Method for determining reachable methods in object-oriented applications that use class libraries
US5778233A (en) * 1996-10-11 1998-07-07 International Business Machines Corporation Method and apparatus for enabling global compiler optimizations in the presence of exception handlers within a computer program
US5937195A (en) 1996-11-27 1999-08-10 Hewlett-Packard Co Global control flow treatment of predicated code
US5943499A (en) 1996-11-27 1999-08-24 Hewlett-Packard Company System and method for solving general global data flow predicated code problems
US5857105A (en) 1997-02-05 1999-01-05 Hewlett-Packard Company Compiler for reducing number of indirect calls in an executable code
US6212672B1 (en) * 1997-03-07 2001-04-03 Dynamics Research Corporation Software development system with an executable working model in an interpretable intermediate modeling language
US5999739A (en) 1997-05-29 1999-12-07 Hewlett-Packard Company Method and apparatus for elimination of redundant branch instructions from a program
US6009273A (en) 1997-05-29 1999-12-28 Hewlett-Packard Company Method for conversion of a variable argument routine to a fixed argument routine
US6070011A (en) 1997-10-21 2000-05-30 Hewlett-Packard Co. Compiler for performing a loop fusion, dependent upon loop peeling and/or loop reversal
US6148302A (en) 1998-02-26 2000-11-14 Sun Microsystems, Inc. Method, apparatus, system and computer program product for initializing a data structure at its first active use
US6330717B1 (en) * 1998-03-27 2001-12-11 Sony Corporation Of Japan Process and system for developing an application program for a distributed adaptive run-time platform
US6249910B1 (en) 1998-05-04 2001-06-19 Hewlett-Packard Company Apparatus and method for incrementally update static single assignment form for cloned variable name definitions
US6578090B1 (en) * 1998-06-08 2003-06-10 Ricoh Company, Ltd. System and method for interfacing two modules supporting various applications
JP3320358B2 (en) * 1998-06-18 2002-09-03 インターナショナル・ビジネス・マシーンズ・コーポレーション Compiling method, exception handling method, and computer
US6247172B1 (en) * 1998-07-02 2001-06-12 Hewlett-Packard Company Method for a translation system that aggressively optimizes and preserves full synchronous exception state
US6131187A (en) * 1998-08-17 2000-10-10 International Business Machines Corporation Method and system for translating exception handling semantics of a bytecode class file
US6182284B1 (en) 1998-09-30 2001-01-30 Hewlett-Packard Company Method and system for eliminating phi instruction resource interferences and redundant copy instructions from static-single-assignment-form computer code
US6292938B1 (en) * 1998-12-02 2001-09-18 International Business Machines Corporation Retargeting optimized code by matching tree patterns in directed acyclic graphs
US6253304B1 (en) * 1999-01-04 2001-06-26 Advanced Micro Devices, Inc. Collation of interrupt control devices
US6353924B1 (en) 1999-02-08 2002-03-05 Incert Software Corporation Method for back tracing program execution
US6526570B1 (en) * 1999-04-23 2003-02-25 Sun Microsystems, Inc. File portability techniques
US6363522B1 (en) * 1999-04-23 2002-03-26 Sun Microsystems, Inc. Method and apparatus for handling exceptions as normal control flow
US6286134B1 (en) * 1999-04-23 2001-09-04 Sun Microsystems, Inc. Instruction selection in a multi-platform environment
US6374368B1 (en) 1999-05-21 2002-04-16 Microsoft Corporation Weakest precondition analysis
US20020166115A1 (en) 1999-06-10 2002-11-07 A.V.S. Sastry System and method for computer program compilation using scalar register promotion and static single assignment representation
US6481008B1 (en) 1999-06-30 2002-11-12 Microsoft Corporation Instrumentation and optimization tools for heterogeneous programs
US6662356B1 (en) 1999-06-30 2003-12-09 Microsoft Corporation Application program interface for transforming heterogeneous programs
US6460178B1 (en) 1999-06-30 2002-10-01 Microsoft Corporation Shared library optimization for heterogeneous programs
US6381738B1 (en) * 1999-07-16 2002-04-30 International Business Machines Corporation Method for optimizing creation and destruction of objects in computer programs
US6629312B1 (en) * 1999-08-20 2003-09-30 Hewlett-Packard Development Company, L.P. Programmatic synthesis of a machine description for retargeting a compiler
US6560774B1 (en) * 1999-09-01 2003-05-06 Microsoft Corporation Verifier to check intermediate language
US6487716B1 (en) * 1999-10-08 2002-11-26 International Business Machines Corporation Methods and apparatus for optimizing programs in the presence of exceptions
US6625808B1 (en) 1999-12-10 2003-09-23 Microsoft Corporation Method and apparatus for facilitating memory management in a program comprised of heterogeneous components
US6598220B1 (en) * 1999-12-17 2003-07-22 Dell Products L.P. System and method for allowing registerable runtime modification of object behaviors
US6748584B1 (en) 1999-12-29 2004-06-08 Veritas Operating Corporation Method for determining the degree to which changed code has been exercised
US6745383B1 (en) 1999-12-29 2004-06-01 Veritas Operating Corporation Early warning mechanism for enhancing enterprise availability
US6804814B1 (en) 1999-12-29 2004-10-12 Veritas Operating Corporation Method for simulating back program execution from a traceback sequence
JP3974742B2 (en) * 2000-04-14 2007-09-12 インターナショナル・ビジネス・マシーンズ・コーポレーション Compile device, optimization method, and recording medium
US6981249B1 (en) * 2000-05-02 2005-12-27 Microsoft Corporation Methods for enhancing type reconstruction
US6678805B1 (en) 2000-05-25 2004-01-13 Microsoft Corporation Structure organization for improved cache performance
US6625804B1 (en) * 2000-07-06 2003-09-23 Microsoft Corporation Unified event programming model
CA2321018A1 (en) * 2000-09-27 2002-03-27 Ibm Canada Limited-Ibm Canada Limitee Optimizing compilation by forward store movement
US6854110B2 (en) 2000-12-21 2005-02-08 Microsoft Corporation System and method for obtaining scratch registers in computer executable binaries
US6925639B2 (en) 2001-02-23 2005-08-02 Microsoft Corporation Method and system for register allocation
JP3790683B2 (en) * 2001-07-05 2006-06-28 インターナショナル・ビジネス・マシーンズ・コーポレーション Computer apparatus, exception handling program thereof, and compiling method
US7117488B1 (en) * 2001-10-31 2006-10-03 The Regents Of The University Of California Safe computer code formats and methods for generating safe computer code
US6834383B2 (en) 2001-11-26 2004-12-21 Microsoft Corporation Method for binary-level branch reversal on computer architectures supporting predicated execution
US7426719B2 (en) 2001-11-29 2008-09-16 Microsoft Corporation Method and system for rewriting unwind data in the presence of exceptions
JP3870112B2 (en) * 2002-03-13 2007-01-17 インターナショナル・ビジネス・マシーンズ・コーポレーション Compiling method, compiling device, and compiling program
US7213245B2 (en) 2002-05-14 2007-05-01 Microsoft Corporation Software on demand system
US7228540B2 (en) 2002-05-14 2007-06-05 Microsoft Corporation Preparation for software on demand system
US7185328B2 (en) 2002-05-30 2007-02-27 Microsoft Corporation System and method for improving a working set
US7055132B2 (en) * 2002-06-28 2006-05-30 Microsoft Corporation System and method for associating properties with objects
US7240346B2 (en) * 2002-11-13 2007-07-03 Microsoft Corporation Method and system for accessing drawing resources
US7203941B2 (en) * 2002-11-14 2007-04-10 Microsoft Corporation Associating a native resource with an application
US7370321B2 (en) * 2002-11-14 2008-05-06 Microsoft Corporation Systems and methods to read, optimize, and verify byte codes for a multiplatform jit
US7546607B2 (en) * 2002-11-19 2009-06-09 Microsoft Corporation Native code exposing virtual machine managed object
US7281248B2 (en) * 2002-11-19 2007-10-09 Microsoft Corporation Virtualized and realized user interface controls
US7472400B2 (en) * 2003-02-28 2008-12-30 Bea Systems, Inc. Method for dynamically generating a wrapper class
US7120898B2 (en) * 2003-06-26 2006-10-10 Microsoft Corporation Intermediate representation for multiple exception handling models

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5628016A (en) * 1994-06-15 1997-05-06 Borland International, Inc. Systems and methods and implementing exception handling using exception registration records stored in stack memory
US6421667B1 (en) * 1996-06-11 2002-07-16 Edgar F. Codd Delta model processing logic representation and execution system
US6247169B1 (en) * 1996-11-04 2001-06-12 Sun Microsystems, Inc. Structured exception-handling methods, apparatus, and computer program products
US5918235A (en) * 1997-04-04 1999-06-29 Hewlett-Packard Company Object surrogate with active computation and probablistic counter
US6149318A (en) * 1997-04-15 2000-11-21 Samuel C. Kendall Link-time and run-time error detection, and program instrumentation
US5966702A (en) * 1997-10-31 1999-10-12 Sun Microsystems, Inc. Method and apparatus for pre-processing and packaging class files
US6289446B1 (en) * 1998-09-29 2001-09-11 Axis Ab Exception handling utilizing call instruction with context information
US6412109B1 (en) * 1999-01-29 2002-06-25 Sun Microsystems, Inc. Method for optimizing java bytecodes in the presence of try-catch blocks
US20040049769A1 (en) * 2002-09-05 2004-03-11 Guei-Yuan Lueh Methods and apparatus for optimizing the operating speed and size of a computer program

Non-Patent Citations (12)

* Cited by examiner, † Cited by third party
Title
1986, ADDISON WESLEY, ISBN: 0-201-10088-6, article AHO ET AL.: "Compilers: Principles, Techniques, and Tools.", pages: 467 - 592, XP008052651 *
CHOI J. ET AL.: "Efficient and precise modeling of exceptions for the analyse of Java programs.", ACM SIGSOFT SOFTWARE ENGINEERING NOTES PASTE 99, vol. 24, no. 15, September 1999 (1999-09-01), pages 21 - 31, XP002991570 *
FITZGERALD R. ET AL.: "Marmot: An Optimizing Compiler for Java.", TECHNICAL REPORT MSR TR-99-33, 16 June 1999 (1999-06-16), pages 3, XP008052643 *
GOSLING J. ET AL.: "Java intermediate bytecodes.", ACM SIGPLAN NOTICES IR 95, vol. 30, no. 3, March 1995 (1995-03-01), pages 111 - 118, XP000567085 *
HENNESSY J. ET AL.: "Program optimization and exception handling.", PROCEEDINGS OF THE 8TH ACM SIGPLAN-SIGACT SYMPOSIUM ON PRINCIPLES OF PROGRAMMING LANGUAGES., January 1981 (1981-01-01), pages 200 - 206, XP002991571 *
KIENLE H. ET AL.: "A SUIF Java Compiler.", TECHNICAL REPORT TRCS98-18, August 1998 (1998-08-01), XP008052642 *
LITWAK K. ET AL.: "PURE Java tm2.", SAMS PUBLISING, December 1999 (1999-12-01), XP008052652 *
MICROSOFT CORP., 11 May 2000 (2000-05-11), XP008097588, Retrieved from the Internet <URL:=/library/en-us/vccelng/htm/key_s-z_4.asp> *
RAMSEY N. AND PEYTON J. ET AL.: "A single intermediate language that support multiple implementations of exceptions.", ACM SIGPLAN NOTICES PLDI 2000, vol. 35, no. 5, May 2000 (2000-05-01), pages 285 - 298, XP002991569 *
ROBILLARD M. AND MURPHY G. ET AL.: "Analyzing exception flow in Java programs.", ACM SIGSOFT SOFTWARE ENGINEERING NOTES. ESEC/FSE-7, vol. 24, no. 6, October 1999 (1999-10-01), pages 322 - 337, XP002991573 *
See also references of EP1636701A4 *
WOO J. ET AL.: "Alias analysis for exceptions in Java.", AUSTRATIAN COMPUTER SCIENCE COMMUNICATIONS., vol. 4, no. 1, January 2002 (2002-01-01), pages 321 - 329, XP002991572 *

Also Published As

Publication number Publication date
US7308680B2 (en) 2007-12-11
JP2007521568A (en) 2007-08-02
TW200506642A (en) 2005-02-16
TWI340325B (en) 2011-04-11
US20070006192A1 (en) 2007-01-04
EP1636701A2 (en) 2006-03-22
US7120898B2 (en) 2006-10-10
EP1636701B1 (en) 2013-05-08
CN100385399C (en) 2008-04-30
US20040268330A1 (en) 2004-12-30
WO2005006120A2 (en) 2005-01-20
CN1842767A (en) 2006-10-04
KR101099212B1 (en) 2011-12-27
KR20060069364A (en) 2006-06-21
EP1636701A4 (en) 2008-03-26

Similar Documents

Publication Publication Date Title
WO2005006120A3 (en) An intermediate representation for multiple exception handling models
WO2004086222A3 (en) Development of software systems
EP1837757A3 (en) Compiler with particular instruction scheduling
WO2006041554A3 (en) Document processing and management approach to editing a document in a mark up language environment using undoable commands
WO2006068731A3 (en) A system for enterprise knowledge management and automation
AU2003275972A1 (en) Xml interfaces in unified rendering
TW200719229A (en) Method and apparatus for combined execution of native code and target code durign program code conversion
WO2006044235A3 (en) Source code translator
EP1091303A3 (en) Method and system for providing alternatives for text derived from stochastic input sources
WO2005052760A3 (en) System for optimizing application start-up
WO2005029324A3 (en) Automated source code software programmer&#39;s manual generator
WO2005024631A3 (en) Creating and checking runtime data types
WO2007038352A3 (en) Automated creation of model and view code
WO2007002652A3 (en) Translating expressions in a computing environment
EP0977118A3 (en) Data processing method and apparatus
WO2005064497A3 (en) System and method for content structure adaptation
Pandey Object constraint language (OCL) past, present and future
Caporale A Tool for Natural Language Oriented Business Process Modeling.
AU6073099A (en) Component-based source code generator
EP1589440A3 (en) Semantic programming language and linguistic object model
WO2007112068A3 (en) System and method for providing class definitions in a dynamically typed array-based language
WO2005072381A3 (en) Program / method for converting spreadsheet models to callable, compiled routines
JP2009134445A (en) Software component extraction support device
JP2007532986A5 (en)
Fabbri et al. Towards integration of Overture into TASTE

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200480022496.7

Country of ref document: CN

AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DPEN Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed from 20040101)
WWE Wipo information: entry into national phase

Ref document number: 2004776072

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2006517131

Country of ref document: JP

Ref document number: 1020057024967

Country of ref document: KR

Ref document number: 6066/DELNP/2005

Country of ref document: IN

WWP Wipo information: published in national office

Ref document number: 2004776072

Country of ref document: EP