NO924114L - Grensesnitt for aa representere effekter i en flerspraaks optimaliserende kompilator - Google Patents

Grensesnitt for aa representere effekter i en flerspraaks optimaliserende kompilator

Info

Publication number
NO924114L
NO924114L NO92924114A NO924114A NO924114L NO 924114 L NO924114 L NO 924114L NO 92924114 A NO92924114 A NO 92924114A NO 924114 A NO924114 A NO 924114A NO 924114 L NO924114 L NO 924114L
Authority
NO
Norway
Prior art keywords
code
compiler
source
interface
language
Prior art date
Application number
NO92924114A
Other languages
English (en)
Other versions
NO924114D0 (no
Inventor
Jr Robert Neil Faiman
David Scott Blickstein
Steven O Hobbs
Caroline Sweeney Davidson
Richard Barry Grove
Dennis Joseph Murphy
Original Assignee
Digital Equipment Corp
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 Digital Equipment Corp filed Critical Digital Equipment Corp
Publication of NO924114D0 publication Critical patent/NO924114D0/no
Publication of NO924114L publication Critical patent/NO924114L/no

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/43Checking; Contextual analysis
    • G06F8/433Dependency analysis; Data or control flow analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/43Checking; Contextual analysis
    • G06F8/436Semantic checking
    • G06F8/437Type checking
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/447Target code generation

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)
  • Measuring Magnetic Variables (AREA)

Abstract

En kompilatorsammenstilling benytter et felles (skall) eller styre- og sekvensmekanisme og en felles bakre del (der kodegeneratoren er målbestemt). Den felles bakre del innbefatter funksjoner som optimalisering, register- og minnetildeling, og kodefrembringelse. Skallet kan utføres på forskjel- lige vertsdatamaskLner og kodefrembringelsesfunksjonen ved den bakre del kan være målrettet for en hvilken som helst av et antall datamaskin- arkitekturer. En front er spesielt tilpasset for hvert forskjellig kilde- språk, så som Cobol, Fortran, Pascal, C, C++, Ada, etc. Fronten avsøker og spalter kildekodemodulene og frembringer på grunnlag av disse, en mel- lomspråk ("IL") representasjon for de programmer som er uttrykt i kildekoden. Dette EL er konstruert for å representere et hvert av kildespråkene på en universell måte, slik at grensesnittet mellom fronten og den bakre del er av et standard format og ikke behøver skrives om for hver språkbestemt front. EL representasjonen som frembringes av fronten er basert på en nippel som den elementære enhet, der hver tuppel representere en enkel operasjon som skal ut- føres så som en lasting, en lagring, en tilføyelse, en etikettering, en av- grening etc. En datastruktur skapes av fronten for hver tuppel med felter for forskjellig nødvendig informasjon. Et trekk ved oppfinnelsen er en mekanisme for å representere virkningene og avhengighetene i grensesnittet mellom front og bakre del; en tuppel har en effekt hvis den skriver til minnet og har en avhengighet hvis den leser fra et lagersted som et eller annet knutepunkt kan skrive til. En mekanisme som er uavhengig av kilde- språket er anordnet for å beskrive effektene av programmets utførelse. Et annet trekk er ved optimaliseringsdelen i kompilatoren å bruke en frem- gangsmåte til analysering av induksjonsvariable, der forbedringen er å bruke bieffektsett som er anvendt til å konstruere EDEF sett. Et annet trekk er en mekanisme for "foldekonstanter" (betegnet som K-folding eller en KFOLD rutine), som er innbefattet som en av optimaliseringene. Et yt- terligere trekk er typedefinisjonsmekanismen som er betegnet som TD modulen og som danner mekanismer benyttet ved fronten og kompilatorens bakre del ved konstruksjonen av programtypeinformasjon som skal innbefattes i en objekt- modul til bruk for en lenker eller feilsøker. Et annet trekk er en frem- gangsmåte til utførelse av kodefrembringelse ved bruk av kodesymbolmaler på en flerløps måte.
NO92924114A 1991-02-27 1992-10-23 Grensesnitt for aa representere effekter i en flerspraaks optimaliserende kompilator NO924114L (no)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US66246491A 1991-02-27 1991-02-27
US66246191A 1991-02-27 1991-02-27
US66248391A 1991-02-27 1991-02-27
US66272591A 1991-02-27 1991-02-27
US66247791A 1991-02-27 1991-02-27
PCT/US1992/001290 WO1992015944A1 (en) 1991-02-27 1992-02-18 Interface for representing effects in a multilanguage optimizing compiler

Publications (2)

Publication Number Publication Date
NO924114D0 NO924114D0 (no) 1992-10-23
NO924114L true NO924114L (no) 1992-12-18

Family

ID=27542049

Family Applications (2)

Application Number Title Priority Date Filing Date
NO92924115A NO924115L (no) 1991-02-27 1992-10-23 Fremgangsmaate for aa konstruere en konstant-folding mekanisme i en flerspraak optimaliserende kompilator
NO92924114A NO924114L (no) 1991-02-27 1992-10-23 Grensesnitt for aa representere effekter i en flerspraaks optimaliserende kompilator

Family Applications Before (1)

Application Number Title Priority Date Filing Date
NO92924115A NO924115L (no) 1991-02-27 1992-10-23 Fremgangsmaate for aa konstruere en konstant-folding mekanisme i en flerspraak optimaliserende kompilator

Country Status (9)

Country Link
EP (5) EP0526621A1 (no)
JP (5) JPH0762825B2 (no)
KR (5) KR950006608B1 (no)
AU (5) AU658399B2 (no)
CA (5) CA2081477C (no)
DE (1) DE69225281T2 (no)
FI (2) FI924846A (no)
NO (2) NO924115L (no)
WO (5) WO1992015943A1 (no)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1229440B1 (en) 1993-05-27 2007-05-02 Matsushita Electric Industrial Co., Ltd. Program converting unit and processor improved in address management
JP2847688B2 (ja) 1993-05-27 1999-01-20 松下電器産業株式会社 プログラム変換装置およびプロセッサ
JP2755154B2 (ja) * 1994-02-23 1998-05-20 日本電気株式会社 プログラム変換処理装置およびプログラム変換処理方法
US5740469A (en) * 1995-04-24 1998-04-14 Motorola Inc. Apparatus for dynamically reading/writing multiple object file formats through use of object code readers/writers interfacing with generalized object file format interface and applications programmers' interface
CA2251369A1 (en) * 1998-10-26 2000-04-26 International Business Machines Corporation System and method for analyzing dependencies in a computer program
US7000222B1 (en) 1999-08-19 2006-02-14 International Business Machines Corporation Method, system, and program for accessing variables from an operating system for use by an application program
US7966609B2 (en) 2006-03-30 2011-06-21 Intel Corporation Optimal floating-point expression translation method based on pattern matching
KR101314247B1 (ko) * 2009-09-03 2013-10-02 한국전자통신연구원 위성 관제 시스템에서 위성 관제 운용 자동화를 위한 언어변환장치 및 방법
US20130167144A1 (en) * 2009-09-04 2013-06-27 Bernd Mathiske Virtual Machine Persisted Within Itself
US8832672B2 (en) 2011-01-28 2014-09-09 International Business Machines Corporation Ensuring register availability for dynamic binary optimization
EP2687981B1 (en) * 2012-07-18 2017-12-27 MStar Semiconductor, Inc. Automated compiler specialisation for global optimisation
US20160019037A1 (en) * 2014-07-21 2016-01-21 Xamarin Inc. Managing parameter types for generic functions
US9183020B1 (en) 2014-11-10 2015-11-10 Xamarin Inc. Multi-sized data types for managed code
US9213638B1 (en) 2015-03-24 2015-12-15 Xamarin Inc. Runtime memory management using multiple memory managers
JP6481515B2 (ja) 2015-05-29 2019-03-13 富士通株式会社 情報処理装置、コンパイル方法、及びコンパイラプログラム
US10990073B2 (en) * 2016-08-30 2021-04-27 Mitsubishi Electric Corporation Program editing device, program editing method, and computer readable medium
CN108108169B (zh) * 2017-12-27 2020-11-03 广东小天才科技有限公司 一种基于Jenkins的多分支的构建方法及系统
JP7015207B2 (ja) * 2018-04-27 2022-02-02 株式会社日立製作所 ビジュアルプログラミングツールを用いてフローを作成することを支援する装置および方法
JP7163697B2 (ja) * 2018-09-28 2022-11-01 富士通株式会社 生成プログラム,情報処理装置及び生成方法
KR102165928B1 (ko) * 2019-12-04 2020-10-14 서울대학교 산학협력단 전자 장치, 전자 장치의 컴파일링 방법 및 전자 장치의 동작 방법
CN116360788A (zh) * 2023-02-17 2023-06-30 深圳市亿维自动化技术有限公司 结构化文本编程语言的编译方法、编译器及电子设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4667290A (en) * 1984-09-10 1987-05-19 501 Philon, Inc. Compilers using a universal intermediate language

Also Published As

Publication number Publication date
AU1442292A (en) 1992-10-06
DE69225281T2 (de) 1999-01-07
CA2081473A1 (en) 1992-08-28
JPH0769832B2 (ja) 1995-07-31
AU653799B2 (en) 1994-10-13
EP0528008A1 (en) 1993-02-24
FI924846A0 (fi) 1992-10-26
NO924115L (no) 1992-12-18
AU658399B2 (en) 1995-04-13
FI924845A (fi) 1992-10-26
JPH06501580A (ja) 1994-02-17
EP0526622A1 (en) 1993-02-10
JPH0769834B2 (ja) 1995-07-31
JPH06501579A (ja) 1994-02-17
AU663493B2 (en) 1995-10-12
DE69225281D1 (de) 1998-06-04
JPH06501583A (ja) 1994-02-17
KR960003050B1 (ko) 1996-03-04
JPH06501581A (ja) 1994-02-17
AU663311B2 (en) 1995-10-05
CA2081475A1 (en) 1992-08-28
AU663310B2 (en) 1995-10-05
WO1992015945A1 (en) 1992-09-17
AU1429292A (en) 1992-10-06
AU1420492A (en) 1992-10-06
NO924114D0 (no) 1992-10-23
WO1992015941A1 (en) 1992-09-17
CA2081477A1 (en) 1992-08-28
EP0532731A1 (en) 1993-03-24
CA2081476A1 (en) 1992-08-28
CA2081477C (en) 1992-08-28
FI924845A0 (fi) 1992-10-26
AU1569892A (en) 1992-10-06
CA2081449C (en) 1999-04-13
JPH06501582A (ja) 1994-02-17
CA2081473C (en) 1999-04-06
JPH0762826B2 (ja) 1995-07-05
JPH0769833B2 (ja) 1995-07-31
WO1992015943A1 (en) 1992-09-17
JPH0762825B2 (ja) 1995-07-05
KR950006608B1 (ko) 1995-06-19
EP0526621A1 (en) 1993-02-10
WO1992015944A1 (en) 1992-09-17
WO1992015942A1 (en) 1992-09-17
EP0529049A1 (en) 1993-03-03
NO924115D0 (no) 1992-10-23
KR950006609B1 (ko) 1995-06-19
CA2081475C (en) 1998-05-05
FI924846A (fi) 1992-10-26
EP0529049B1 (en) 1998-04-29
CA2081449A1 (en) 1992-08-28
KR950006607B1 (ko) 1995-06-19
AU1439792A (en) 1992-10-06
KR960003138B1 (ko) 1996-03-05

Similar Documents

Publication Publication Date Title
NO924114L (no) Grensesnitt for aa representere effekter i en flerspraaks optimaliserende kompilator
Rupp et al. ViennaCL---linear algebra library for multi-and many-core architectures
Greenblatt et al. A lisp machine
US8756590B2 (en) Binding data parallel device source code
US8276131B2 (en) Method and system for dynamic loop transfer by populating split variables
JP5818351B2 (ja) ヘテロジニアス黙示的及び明示的プロセッシング要素のコンピュータ的一体化のための方法、プログラムおよびコンピュータプログラム
US5812854A (en) Mechanism for integrating user-defined instructions with compiler-generated instructions and for optimizing the integrated instruction stream
US20100095286A1 (en) Register reduction and liveness analysis techniques for program code
US20190146766A1 (en) Device profiling in gpu accelerators by using host-device
CN110058861B (zh) 源码处理方法及装置、存储介质、电子设备
US9152400B2 (en) Eliminating redundant reference count operations in intermediate representation of script code
Noaje et al. Source-to-source code translator: OpenMP C to CUDA
US20130024674A1 (en) Return address optimisation for a dynamic code translator
US8539458B2 (en) Transforming addressing alignment during code generation
KR101632027B1 (ko) 주석기반의 의사코드를 이용한 프로그램 변환 방법 및 그 방법을 구현하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체
US7152223B1 (en) Methods and systems for compiling and interpreting one or more associations between declarations and implementations in a language neutral fashion
US5561801A (en) System and method for multilevel promotion
Ferrer et al. Mercurium: Design decisions for a s2s compiler
Yang et al. O2render: An opencl-to-renderscript translator for porting across various gpus or cpus
Ramsey et al. Resourceable, retargetable, modular instruction selection using a machine-independent, type-based tiling of low-level intermediate code
Leupers LANCE: AC compiler platform for embedded processors
Li et al. SIRIUS: Harvesting Whole-Program Optimization Opportunities for DNNs
Bertolotti et al. Embedded software development: the open-source approach
Saleil et al. Interprocedural Specialization of Higher-Order Dynamic Languages Without Static Analysis
JP2004013190A (ja) ソフトウエア開発環境、シミュレータ及び記録媒体