The Construction of an Universal Linearized Control Flow Graph for Static Code Analysis of Algorithms

This paper presents the description of a possible way to build the universal linearized control flow graph which is supposed to be architecture-independent and applicable to the description of any high level language programs. The practical usefulness of the graph considered is the existence of the...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Modelirovanie i analiz informacionnyh sistem Jg. 20; H. 2; S. 166 - 177
Hauptverfasser: Bitner, V. A., Zaborovsky, N. V.
Format: Journal Article
Sprache:Englisch
Veröffentlicht: Yaroslavl State University 18.03.2015
Schlagworte:
ISSN:1818-1015, 2313-5417
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Abstract This paper presents the description of a possible way to build the universal linearized control flow graph which is supposed to be architecture-independent and applicable to the description of any high level language programs. The practical usefulness of the graph considered is the existence of the fast and optimal search of the unique execution paths that is valuable in the methods of static code analysis of algorithms for race condition search. Optimizing compiler CLANG&LLVM is used as a technical tool for building a linearized control flow graph. The analysis of LLVM compiler procedural optimizations is carried out in the article. Transformations of intermediate representation of those optimizations result in reduction of the number of instructions responsible for conditional or unconditional branches in the code as well as the elimination or simplification of the whole loops and conditional constructions. The results of the analysis performed in the paper allowed revealing the most effective optimizations line of the LLVM compiler, which leads to a significant linearization of the control flow graph. That fact was demonstrated by the example code of the Peterson mutual execution algorithm for 2 threads.
AbstractList This paper presents the description of a possible way to build the universal linearized control flow graph which is supposed to be architecture-independent and applicable to the description of any high level language programs. The practical usefulness of the graph considered is the existence of the fast and optimal search of the unique execution paths that is valuable in the methods of static code analysis of algorithms for race condition search. Optimizing compiler CLANG&LLVM is used as a technical tool for building a linearized control flow graph. The analysis of LLVM compiler procedural optimizations is carried out in the article. Transformations of intermediate representation of those optimizations result in reduction of the number of instructions responsible for conditional or unconditional branches in the code as well as the elimination or simplification of the whole loops and conditional constructions. The results of the analysis performed in the paper allowed revealing the most effective optimizations line of the LLVM compiler, which leads to a significant linearization of the control flow graph. That fact was demonstrated by the example code of the Peterson mutual execution algorithm for 2 threads.
Author Zaborovsky, N. V.
Bitner, V. A.
Author_xml – sequence: 1
  givenname: V. A.
  surname: Bitner
  fullname: Bitner, V. A.
  organization: MIPT, Informatics Department
– sequence: 2
  givenname: N. V.
  surname: Zaborovsky
  fullname: Zaborovsky, N. V.
  organization: MIPT, Informatics Department
BookMark eNo9kNtKAzEURYMoWGv_IX5ANJlMbo-laC0UfLB9Dplc2sh0Ismo1K93ppU-Hdhnszhn3YHrLnUegAeCH4msGHsikkhEMGGowoSiChHOERHiCkwqOgSsJuIaTC61WzArJTa4rgWjlIkJ8Ju9h4vUlT5_2T6mDqYATQe3Xfz2uZgWrmPnTY6_3o29PqcWvrTpBy6z-dzDkDJ8700f7bB1Hs470x5LLCNm3u5Sjv3-UO7BTTBt8bP_OQXbl-fN4hWt35arxXyNLOFCIMGDJCw0LkgXMHWKBW44UVxaLEVjKzb8YGvWYOUENsFg1XAnvPHKKxsCnYLVmeuS-dCfOR5MPupkoj4FKe-0ycOtrde45q4RRihPaU0ZkVIqyWRQinkVfD2w1Jllcyol-3DhEaxP-vXoVY9e9ahfV3rQrwf99A9vrnqY
Cites_doi 10.1145/197405.197406
ContentType Journal Article
DBID AAYXX
CITATION
DOA
DOI 10.18255/1818-1015-2013-2-166-177
DatabaseName CrossRef
DOAJ Directory of Open Access Journals
DatabaseTitle CrossRef
DatabaseTitleList
CrossRef
Database_xml – sequence: 1
  dbid: DOA
  name: DOAJ (Directory of Open Access Journals)
  url: https://www.doaj.org/
  sourceTypes: Open Website
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISSN 2313-5417
EndPage 177
ExternalDocumentID oai_doaj_org_article_046db7a79e3343518889858f995e9fe4
10_18255_1818_1015_2013_2_166_177
GroupedDBID 5VS
642
AAFWJ
AAYXX
ADBBV
ALMA_UNASSIGNED_HOLDINGS
BCNDV
CITATION
GROUPED_DOAJ
IPNFZ
KQ8
RIG
ID FETCH-LOGICAL-c1677-76f815fbdf8df03d95f6a61968c087bc25015c45b09d70afa09b6d7eae9e9cff3
IEDL.DBID DOA
ISSN 1818-1015
IngestDate Fri Oct 03 12:45:25 EDT 2025
Sat Nov 29 02:26:07 EST 2025
IsDoiOpenAccess true
IsOpenAccess true
IsPeerReviewed true
IsScholarly true
Issue 2
Language English
License https://www.mais-journal.ru/jour/about/editorialPolicies#openAccessPolicy
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-c1677-76f815fbdf8df03d95f6a61968c087bc25015c45b09d70afa09b6d7eae9e9cff3
OpenAccessLink https://doaj.org/article/046db7a79e3343518889858f995e9fe4
PageCount 12
ParticipantIDs doaj_primary_oai_doaj_org_article_046db7a79e3343518889858f995e9fe4
crossref_primary_10_18255_1818_1015_2013_2_166_177
PublicationCentury 2000
PublicationDate 2015-03-18
PublicationDateYYYYMMDD 2015-03-18
PublicationDate_xml – month: 03
  year: 2015
  text: 2015-03-18
  day: 18
PublicationDecade 2010
PublicationTitle Modelirovanie i analiz informacionnyh sistem
PublicationYear 2015
Publisher Yaroslavl State University
Publisher_xml – name: Yaroslavl State University
References ref13
ref12
ref11
ref10
ref2
ref1
ref8
ref7
ref9
ref4
ref3
ref6
ref5
References_xml – ident: ref13
– ident: ref1
– ident: ref4
– ident: ref2
– ident: ref3
– ident: ref5
– ident: ref6
– ident: ref7
– ident: ref8
  doi: 10.1145/197405.197406
– ident: ref9
– ident: ref10
– ident: ref11
– ident: ref12
SSID ssib044753357
ssib009050552
ssib059259322
ssib006738434
ssj0001879522
Score 1.9034457
Snippet This paper presents the description of a possible way to build the universal linearized control flow graph which is supposed to be architecture-independent and...
SourceID doaj
crossref
SourceType Open Website
Index Database
StartPage 166
SubjectTerms multithreaded algorithms
optimizing compiler
race condition
ssa
static analysis
Title The Construction of an Universal Linearized Control Flow Graph for Static Code Analysis of Algorithms
URI https://doaj.org/article/046db7a79e3343518889858f995e9fe4
Volume 20
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
journalDatabaseRights – providerCode: PRVAON
  databaseName: DOAJ (Directory of Open Access Journals)
  customDbUrl:
  eissn: 2313-5417
  dateEnd: 99991231
  omitProxy: false
  ssIdentifier: ssj0001879522
  issn: 1818-1015
  databaseCode: DOA
  dateStart: 20120101
  isFulltext: true
  titleUrlDefault: https://www.doaj.org/
  providerName: Directory of Open Access Journals
– providerCode: PRVHPJ
  databaseName: ROAD: Directory of Open Access Scholarly Resources
  customDbUrl:
  eissn: 2313-5417
  dateEnd: 99991231
  omitProxy: false
  ssIdentifier: ssib044753357
  issn: 1818-1015
  databaseCode: M~E
  dateStart: 20000101
  isFulltext: true
  titleUrlDefault: https://road.issn.org
  providerName: ISSN International Centre
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwrV3PTxUxEG4MIcaLqGgAwdTEa8N2S3_MEQlPD0o8KOHWdNupvgTfM0A04cDfzszuvpflxMVLD93dJvt12pmvnXwjxIcMuYGAWgVXszoqiCoZm1TWutJ2aJPtzzvOv_izs3BxAd8mpb44J2yQBx6AOyT-VjqfPKAx5No1MTYINlQAi1CxVwKlqGdCpob7RROmwmfABdvs2pGzyp2ZCLFZIBZgRiG7_nSGa3D3VxDkAVn_VNun4j3vMMSo7OG6k4xMG9Uq7ZzS3j9wbpMaAL2zmr0Qz8coUx4Pf_dSPMHFK7G1quAgxwW9LZCsRHLNzpWKrFxWmRZyTNegIYir0lqY32Lh9zirXc4ul__kJxa6lhTxSg5X55meFpQriRMe5vjy5_JqfvPr9_Vr8WN2-v3ksxoLL9AUOe-VdzVoW7tSQ6mNKWCrS8S0XMhN8F2msEnbfGS7BopvUk0NdK54TAgIuVbzRmwslgvcEZL5ps0ZUmo72i4wAEGbqa3ZoTN1V7QrxOKfQV8jMi9hmCPDzDloNjLMsY0EcySYd8VHxnb9AUtk9x1kOHE0nPiY4ez9j0HeimctmwEn-IV9sUGzhQdiM_-9mV9fvettktqvd6f3C0zaYQ
linkProvider Directory of Open Access Journals
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=The+Construction+of+an+Universal+Linearized+Control+Flow+Graph+for+Static+Code+Analysis+of+Algorithms&rft.jtitle=Modelirovanie+i+analiz+informacionnyh+sistem&rft.au=V.+A.+Bitner&rft.au=N.+V.+Zaborovsky&rft.date=2015-03-18&rft.pub=Yaroslavl+State+University&rft.issn=1818-1015&rft.eissn=2313-5417&rft.volume=20&rft.issue=2&rft.spage=166&rft.epage=177&rft_id=info:doi/10.18255%2F1818-1015-2013-2-166-177&rft.externalDBID=DOA&rft.externalDocID=oai_doaj_org_article_046db7a79e3343518889858f995e9fe4
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1818-1015&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1818-1015&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1818-1015&client=summon