<?xml version="1.0" encoding="utf-8"?>
<TEI xmlns="http://www.tei-c.org/ns/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:hal="http://hal.archives-ouvertes.fr/" xmlns:gml="http://www.opengis.net/gml/3.3/" xmlns:gmlce="http://www.opengis.net/gml/3.3/ce" version="1.1" xsi:schemaLocation="http://www.tei-c.org/ns/1.0 http://api.archives-ouvertes.fr/documents/aofr-sword.xsd">
  <teiHeader>
    <fileDesc>
      <titleStmt>
        <title>HAL TEI export of hal-01387031</title>
      </titleStmt>
      <publicationStmt>
        <distributor>CCSD</distributor>
        <availability status="restricted">
          <licence target="https://creativecommons.org/publicdomain/zero/1.0/">CC0 1.0 - Universal</licence>
        </availability>
        <date when="2026-05-18T00:00:08+02:00"/>
      </publicationStmt>
      <sourceDesc>
        <p part="N">HAL API Platform</p>
      </sourceDesc>
    </fileDesc>
  </teiHeader>
  <text>
    <body>
      <listBibl>
        <biblFull>
          <titleStmt>
            <title xml:lang="en">Pointer Disambiguation via Strict Inequalities</title>
            <author role="aut">
              <persName>
                <forename type="first">Maroua</forename>
                <surname>Maalej</surname>
              </persName>
              <idno type="halauthorid">965814-0</idno>
              <affiliation ref="#struct-179718"/>
              <affiliation ref="#struct-301088"/>
              <affiliation ref="#struct-35418"/>
            </author>
            <author role="aut">
              <persName>
                <forename type="first">Vitor</forename>
                <surname>Paisante</surname>
              </persName>
              <idno type="halauthorid">966056-0</idno>
              <affiliation ref="#struct-240047"/>
            </author>
            <author role="aut">
              <persName>
                <forename type="first">Ramos</forename>
                <surname>Pedro</surname>
              </persName>
              <idno type="halauthorid">1079602-0</idno>
              <affiliation ref="#struct-240047"/>
            </author>
            <author role="aut">
              <persName>
                <forename type="first">Laure</forename>
                <surname>Gonnord</surname>
              </persName>
              <email type="md5">0eea614fd0dbef0d803a6ae1e0e23ba0</email>
              <email type="domain">gonnord.org</email>
              <idno type="idhal" notation="string">laure-gonnord</idno>
              <idno type="idhal" notation="numeric">1749</idno>
              <idno type="halauthorid" notation="string">7985-1749</idno>
              <idno type="ORCID">https://orcid.org/0000-0002-8013-1611</idno>
              <idno type="IDREF">https://www.idref.fr/125304145</idno>
              <affiliation ref="#struct-194495"/>
              <affiliation ref="#struct-35418"/>
              <affiliation ref="#struct-179718"/>
            </author>
            <author role="aut">
              <persName>
                <forename type="first">Fernando</forename>
                <surname>Pereira</surname>
              </persName>
              <idno type="halauthorid">38239-0</idno>
              <affiliation ref="#struct-240047"/>
            </author>
            <editor role="depositor">
              <persName>
                <forename>Laure</forename>
                <surname>Gonnord</surname>
              </persName>
              <email type="md5">0eea614fd0dbef0d803a6ae1e0e23ba0</email>
              <email type="domain">gonnord.org</email>
            </editor>
            <funder>                                                                                  This work was supported by the LABEX MILYON (ANR-10-LABX-0070) of Université  de Lyon, within the program "Investissements d'Avenir" (ANR-11-IDEX-0007)        operated by the French National Research Agency (ANR). </funder>
          </titleStmt>
          <editionStmt>
            <edition n="v1" type="current">
              <date type="whenSubmitted">2016-12-22 10:59:37</date>
              <date type="whenWritten">2016</date>
              <date type="whenModified">2026-01-09 21:30:03</date>
              <date type="whenReleased">2016-12-22 17:16:32</date>
              <date type="whenProduced">2017-02-04</date>
              <date type="whenEndEmbargoed">2016-12-22</date>
              <ref type="file" target="https://hal.science/hal-01387031v1/document">
                <date notBefore="2016-12-22"/>
              </ref>
              <ref type="file" subtype="author" n="1" target="https://hal.science/hal-01387031v1/file/CGO17_AuthorVersion.pdf" id="file-1421394-1506945">
                <date notBefore="2016-12-22"/>
              </ref>
            </edition>
            <respStmt>
              <resp>contributor</resp>
              <name key="123450">
                <persName>
                  <forename>Laure</forename>
                  <surname>Gonnord</surname>
                </persName>
                <email type="md5">0eea614fd0dbef0d803a6ae1e0e23ba0</email>
                <email type="domain">gonnord.org</email>
              </name>
            </respStmt>
          </editionStmt>
          <publicationStmt>
            <distributor>CCSD</distributor>
            <idno type="halId">hal-01387031</idno>
            <idno type="halUri">https://hal.science/hal-01387031</idno>
            <idno type="halBibtex">maalej:hal-01387031</idno>
            <idno type="halRefHtml">&lt;i&gt;Code Generation and Optimisation &lt;/i&gt;, Feb 2017, Austin, United States. pp.134-147</idno>
            <idno type="halRef">Code Generation and Optimisation , Feb 2017, Austin, United States. pp.134-147</idno>
            <availability status="restricted">
              <licence target="https://about.hal.science/hal-authorisation-v1/">HAL Authorization<ref corresp="#file-1421394-1506945"/></licence>
            </availability>
          </publicationStmt>
          <seriesStmt>
            <idno type="stamp" n="ENS-LYON">École Normale Supérieure de Lyon</idno>
            <idno type="stamp" n="CNRS">CNRS - Centre national de la recherche scientifique</idno>
            <idno type="stamp" n="INRIA">INRIA - Institut National de Recherche en Informatique et en Automatique</idno>
            <idno type="stamp" n="UNIV-LYON1">Université Claude Bernard - Lyon I</idno>
            <idno type="stamp" n="INRIA-RHA">INRIA Grenoble - Rhône-Alpes</idno>
            <idno type="stamp" n="LIP" corresp="UNIV-LYON1">Laboratoire de l'Informatique du Parallélisme</idno>
            <idno type="stamp" n="INRIA_TEST">INRIA - Institut National de Recherche en Informatique et en Automatique</idno>
            <idno type="stamp" n="TESTALAIN1">TESTALAIN1</idno>
            <idno type="stamp" n="INRIA2">INRIA 2</idno>
            <idno type="stamp" n="INRIA2017">INRIA2017</idno>
            <idno type="stamp" n="INRIA-RENGRE">INRIA-RENGRE</idno>
            <idno type="stamp" n="UDL">UDL</idno>
            <idno type="stamp" n="UNIV-LYON">Université de Lyon</idno>
          </seriesStmt>
          <notesStmt>
            <note type="audience" n="2">International</note>
            <note type="invited" n="0">No</note>
            <note type="popular" n="0">No</note>
            <note type="peer" n="1">Yes</note>
            <note type="proceedings" n="1">Yes</note>
          </notesStmt>
          <sourceDesc>
            <biblStruct>
              <analytic>
                <title xml:lang="en">Pointer Disambiguation via Strict Inequalities</title>
                <author role="aut">
                  <persName>
                    <forename type="first">Maroua</forename>
                    <surname>Maalej</surname>
                  </persName>
                  <idno type="halauthorid">965814-0</idno>
                  <affiliation ref="#struct-179718"/>
                  <affiliation ref="#struct-301088"/>
                  <affiliation ref="#struct-35418"/>
                </author>
                <author role="aut">
                  <persName>
                    <forename type="first">Vitor</forename>
                    <surname>Paisante</surname>
                  </persName>
                  <idno type="halauthorid">966056-0</idno>
                  <affiliation ref="#struct-240047"/>
                </author>
                <author role="aut">
                  <persName>
                    <forename type="first">Ramos</forename>
                    <surname>Pedro</surname>
                  </persName>
                  <idno type="halauthorid">1079602-0</idno>
                  <affiliation ref="#struct-240047"/>
                </author>
                <author role="aut">
                  <persName>
                    <forename type="first">Laure</forename>
                    <surname>Gonnord</surname>
                  </persName>
                  <email type="md5">0eea614fd0dbef0d803a6ae1e0e23ba0</email>
                  <email type="domain">gonnord.org</email>
                  <idno type="idhal" notation="string">laure-gonnord</idno>
                  <idno type="idhal" notation="numeric">1749</idno>
                  <idno type="halauthorid" notation="string">7985-1749</idno>
                  <idno type="ORCID">https://orcid.org/0000-0002-8013-1611</idno>
                  <idno type="IDREF">https://www.idref.fr/125304145</idno>
                  <affiliation ref="#struct-194495"/>
                  <affiliation ref="#struct-35418"/>
                  <affiliation ref="#struct-179718"/>
                </author>
                <author role="aut">
                  <persName>
                    <forename type="first">Fernando</forename>
                    <surname>Pereira</surname>
                  </persName>
                  <idno type="halauthorid">38239-0</idno>
                  <affiliation ref="#struct-240047"/>
                </author>
              </analytic>
              <monogr>
                <title level="m">Proceedings of the 2017 International Symposium on Code Generation and Optimization</title>
                <meeting>
                  <title>Code Generation and Optimisation </title>
                  <date type="start">2017-02-04</date>
                  <date type="end">2017-02-08</date>
                  <settlement>Austin</settlement>
                  <country key="US">United States</country>
                </meeting>
                <imprint>
                  <biblScope unit="pp">134-147</biblScope>
                  <date type="datePub">2017-02</date>
                </imprint>
              </monogr>
            </biblStruct>
          </sourceDesc>
          <profileDesc>
            <langUsage>
              <language ident="en">English</language>
            </langUsage>
            <textClass>
              <keywords scheme="author">
                <term xml:lang="en">Precision</term>
                <term xml:lang="en">Speed</term>
                <term xml:lang="en">Range Analysis</term>
                <term xml:lang="en">Alias Analysis</term>
                <term xml:lang="en">Static Analysis</term>
              </keywords>
              <classCode scheme="halDomain" n="info.info-cl">Computer Science [cs]/Computation and Language [cs.CL]</classCode>
              <classCode scheme="halDomain" n="info.info-ds">Computer Science [cs]/Data Structures and Algorithms [cs.DS]</classCode>
              <classCode scheme="halTypology" n="COMM">Conference papers</classCode>
              <classCode scheme="halOldTypology" n="COMM">Conference papers</classCode>
              <classCode scheme="halTreeTypology" n="COMM">Conference papers</classCode>
            </textClass>
            <abstract xml:lang="en">
              <p>The design and implementation of static analyses that disambiguate pointershas been a focus of research since the early days of compiler construction.One of the challenges that arise in this context is the analysis of languagesthat support pointer arithmetics, such as C, C++ and assembly dialects.This paper contributes to solve this challenge.We start from an obvious, yet unexplored, observation: if a pointeris strictly less than another, they cannot alias.Motivated by this remark, we use the abstract interpretation framework tobuild strict less-than relations between pointers.To this end, we construct a program representation that bestows the StaticSingle Information (SSI) property onto our dataflow analysis.SSI gives us an efficient sparse algorithm, which, once seen as aform of abstract interpretation, is correct by construction.We have implemented our static analysis in LLVM.It runs in time linear on the number of program variables, and, depending onthe benchmark, it can be as much as six times more precise than the pointerdisambiguation techniques already in place in that compiler.</p>
            </abstract>
          </profileDesc>
        </biblFull>
      </listBibl>
    </body>
    <back>
      <listOrg type="structures">
        <org type="researchteam" xml:id="struct-179718" status="OLD">
          <idno type="RNSR">201221200W</idno>
          <orgName>Optimisation des ressources : modèles, algorithmes et ordonnancement</orgName>
          <orgName type="acronym">ROMA</orgName>
          <date type="start">2015-01-01</date>
          <date type="end">2021-12-31</date>
          <desc>
            <address>
              <addrLine>Laboratoire de l'Informatique du Parallélisme 46 Allée d'Italie 69364 Lyon</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">http://www.inria.fr/equipes/roma</ref>
          </desc>
          <listRelation>
            <relation active="#struct-2497" type="direct"/>
            <relation active="#struct-300009" type="indirect"/>
            <relation active="#struct-35418" type="direct"/>
            <relation active="#struct-6818" type="indirect"/>
            <relation active="#struct-301088" type="indirect"/>
            <relation active="#struct-194495" type="indirect"/>
            <relation name="UMR5668 / URA1398" active="#struct-441569" type="indirect"/>
          </listRelation>
        </org>
        <org type="regroupinstitution" xml:id="struct-301088" status="VALID">
          <idno type="ROR">https://ror.org/01rk35k63</idno>
          <orgName>Université de Lyon</orgName>
          <desc>
            <address>
              <addrLine>92 rue Pasteur - CS 30122, 69361 Lyon Cedex 07</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">https://www.universite-lyon.fr/</ref>
          </desc>
        </org>
        <org type="laboratory" xml:id="struct-35418" status="VALID">
          <idno type="IdRef">191041289</idno>
          <idno type="ISNI">0000000104538607</idno>
          <idno type="RNSR">200317503S</idno>
          <idno type="ROR">04msnz457</idno>
          <orgName>Laboratoire de l'Informatique du Parallélisme</orgName>
          <orgName type="acronym">LIP</orgName>
          <date type="start">1990-01-01</date>
          <desc>
            <address>
              <addrLine>46 Allée d'Italie 69364 LYON CEDEX 07</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">http://www.ens-lyon.fr/LIP/</ref>
          </desc>
          <listRelation>
            <relation active="#struct-6818" type="direct"/>
            <relation active="#struct-301088" type="direct"/>
            <relation active="#struct-194495" type="direct"/>
            <relation active="#struct-300009" type="direct"/>
            <relation name="UMR5668 / URA1398" active="#struct-441569" type="direct"/>
          </listRelation>
        </org>
        <org type="researchteam" xml:id="struct-240047" status="VALID">
          <orgName>Laboratório de Linguagens de Programação</orgName>
          <orgName type="acronym">LLP</orgName>
          <desc>
            <address>
              <addrLine>Belo Horizonte, Brazil</addrLine>
              <country key="BR"/>
            </address>
            <ref type="url">http://www2.dcc.ufmg.br/laboratorios/llp/</ref>
          </desc>
          <listRelation>
            <relation active="#struct-173814" type="direct"/>
            <relation active="#struct-196923" type="indirect"/>
          </listRelation>
        </org>
        <org type="institution" xml:id="struct-194495" status="VALID">
          <idno type="IdRef">026402823</idno>
          <idno type="ISNI">0000000121686185</idno>
          <idno type="ROR">https://ror.org/029brtt94</idno>
          <orgName>Université Claude Bernard Lyon 1</orgName>
          <orgName type="acronym">UCBL</orgName>
          <desc>
            <address>
              <addrLine>43, boulevard du 11 novembre 1918, 69622 Villeurbanne cedex</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">http://www.univ-lyon1.fr/</ref>
          </desc>
          <listRelation>
            <relation active="#struct-301088" type="direct"/>
          </listRelation>
        </org>
        <org type="laboratory" xml:id="struct-2497" status="VALID">
          <idno type="RNSR">199218244V</idno>
          <idno type="ROR">https://ror.org/00n8d6z93</idno>
          <orgName>Centre Inria de l'Université Grenoble Alpes</orgName>
          <desc>
            <address>
              <addrLine>Inovallée655 avenue de l'Europe38330 Montbonnot</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">http://www.inria.fr/centre/grenoble</ref>
          </desc>
          <listRelation>
            <relation active="#struct-300009" type="direct"/>
          </listRelation>
        </org>
        <org type="institution" xml:id="struct-300009" status="VALID">
          <idno type="ROR">https://ror.org/02kvxyf05</idno>
          <orgName>Institut National de Recherche en Informatique et en Automatique</orgName>
          <orgName type="acronym">Inria</orgName>
          <desc>
            <address>
              <addrLine>Domaine de VoluceauRocquencourt - BP 10578153 Le Chesnay Cedex</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">http://www.inria.fr/en/</ref>
          </desc>
        </org>
        <org type="institution" xml:id="struct-6818" status="VALID">
          <idno type="IdRef">149154992</idno>
          <idno type="ISNI">0000000123319856</idno>
          <idno type="ROR">https://ror.org/04zmssz18</idno>
          <idno type="Wikidata">Q10159</idno>
          <orgName>École normale supérieure de Lyon</orgName>
          <orgName type="acronym">ENS de Lyon</orgName>
          <date type="start">2010-01-01</date>
          <desc>
            <address>
              <addrLine>15 parvis René Descartes - BP 7000 - 69342 Lyon Cedex 07</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">https://www.ens-lyon.fr/</ref>
          </desc>
          <listRelation>
            <relation active="#struct-301088" type="direct"/>
          </listRelation>
        </org>
        <org type="regroupinstitution" xml:id="struct-441569" status="VALID">
          <idno type="IdRef">02636817X</idno>
          <idno type="ISNI">0000000122597504</idno>
          <idno type="ROR">https://ror.org/02feahw73</idno>
          <orgName>Centre National de la Recherche Scientifique</orgName>
          <orgName type="acronym">CNRS</orgName>
          <date type="start">1939-10-19</date>
          <desc>
            <address>
              <country key="FR"/>
            </address>
            <ref type="url">https://www.cnrs.fr/</ref>
          </desc>
        </org>
        <org type="laboratory" xml:id="struct-173814" status="VALID">
          <orgName>Departamento de Ciência da Computação [Minas Gerais]</orgName>
          <orgName type="acronym">DCC - UFMG</orgName>
          <desc>
            <address>
              <addrLine>Avenida Antônio Carlos, 6627 Campus de Pampulha Belo Horizonte - Minas Gerais</addrLine>
              <country key="BR"/>
            </address>
            <ref type="url">http://dcc.ufmg.br</ref>
          </desc>
          <listRelation>
            <relation active="#struct-196923" type="direct"/>
          </listRelation>
        </org>
        <org type="regroupinstitution" xml:id="struct-196923" status="VALID">
          <idno type="IdRef">028685059</idno>
          <idno type="ROR">https://ror.org/0176yjw32</idno>
          <orgName>Universidade Federal de Minas Gerais = Federal University of Minas Gerais</orgName>
          <orgName type="acronym">UFMG</orgName>
          <date type="start">1927-01-01</date>
          <desc>
            <address>
              <addrLine>Av. Antônio Carlos, 6627, Pampulha - Belo Horizonte</addrLine>
              <country key="BR"/>
            </address>
            <ref type="url">https://ufmg.br/</ref>
          </desc>
        </org>
      </listOrg>
    </back>
  </text>
</TEI>