Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/3178372acmconferencesBook PagePublication PagesccConference Proceedingsconference-collections
CC '18: Proceedings of the 27th International Conference on Compiler Construction
ACM2018 Proceeding
Publisher:
  • Association for Computing Machinery
  • New York
  • NY
  • United States
Conference:
CGO '18: 16th Annual IEEE/ACM International Symposium on Code Generation and Optimization Vienna Austria February 24 - 25, 2018
ISBN:
978-1-4503-5644-2
Published:
24 February 2018
Sponsors:
In-Cooperation:
IEEE-CS

Reflects downloads up to 18 Nov 2024Bibliometrics
Abstract

No abstract available.

Skip Table Of Content Section
SESSION: Keynote
abstract
Rethinking compilers in the rise of machine learning and AI (keynote)

Recent years have witnessed some influential progresses in Machine Learning (ML) and Artificial Intelligence (AI). The progresses may lead to some significant changes to future programming. Many programs, for instance, may be not code written in some ...

abstract
Compiler and language design for quantum computing (keynote)

Quantum computing, once merely a curious concept discussed within the field of theoretical physics, has long-since become of practical interest in numerous fields and caught the attention of mainstream media. The reason for the widespread interest stems ...

SESSION: Polyhedral Compilation
research-article
Modeling the conflicting demands of parallelism and Temporal/Spatial locality in affine scheduling

The construction of effective loop nest optimizers and parallelizers remains challenging despite decades of work in the area. Due to the increasing diversity of loop-intensive applications and to the complex memory/computation hierarchies in modern ...

research-article
A polyhedral compilation framework for loops with dynamic data-dependent bounds

We study the parallelizing compilation and loop nest optimization of an important class of programs where counted loops have a dynamic data-dependent upper bound. Such loops are amenable to a wider set of transformations than general while loops with ...

research-article
Polyhedral expression propagation

Polyhedral techniques have proven to be powerful for various optimizations, from automatic parallelization to accelerator programming. At their core, these techniques compute accurate dependences among statement instances in order to apply complex ...

SESSION: Data-Flow and Pointer/Alias Analysis
research-article
Computing partially path-sensitive MFP solutions in data flow analyses

Data flow analysis traverses paths in a control flow graph (CFG) representation of programs to compute useful information. Many of these paths are infeasible, i.e. they cannot arise in any possible execution. The information computed along these paths ...

research-article
An efficient data structure for must-alias analysis

A must-alias (or “definite-alias”) analysis computes sets of expressions that are guaranteed to be aliased at a given pro- gram point. The analysis has been shown to have significant practical impact, and it is actively used in popular research ...

research-article
Parallel sparse flow-sensitive points-to analysis

This paper aims to contribute to further advances in pointer (or points-to) analysis algorithms along the combined dimen- sions of precision, scalability, and performance. For precision, we aim to support interprocedural ow-sensitive analysis. For ...

SESSION: Code Generation and Optimisation
research-article
PAYJIT: space-optimal JIT compilation and its practical implementation

Just-in-time (JIT) compilation in dynamic programming languages can improve execution speed in code with hot sections. However, that comes at the cost of increased memory usage for the storage of compiled code and associated bookkeeping data, as well as ...

research-article
Finding missed compiler optimizations by differential testing

Randomized differential testing of compilers has had great success in finding compiler crashes and silent miscompilations. In this paper we investigate whether we can use similar techniques to improve the quality of the generated code: Can we compare the ...

research-article
Fast and flexible instruction selection with constraints

Tree-parsing instruction selection as used in, e.g., lcc, uses dynamic costs to gain flexibility and handle situations (such as read-modify-write instructions) that do not fit into the basic tree-parsing model. The disadvantage of dynamic costs is that ...

SESSION: Compilation for Specialised Domains
research-article
Compiling for concise code and efficient I/O

Large infrastructures of Internet companies, such as Facebook and Twitter, are composed of several layers of micro-services. While this modularity provides scalability to the system, the I/O associated with each service request strongly impacts its ...

research-article
Termination checking and task decomposition for task-based intermittent programs

Emerging energy-harvesting computer systems extract energy from their environment to compute, sense, and communicate with no battery or tethered power supply. Building software for energy-harvesting devices is a challenge, because they operate only ...

research-article
Open Access
A session type provider: compile-time API generation of distributed protocols with refinements in F#

We present a library for the specification and implementation of distributed protocols in native F# (and other .NET languages) based on multiparty session types (MPST). There are two main contributions. Our library is the first practical development of ...

SESSION: Code Translation and Transformation
research-article
Tail call elimination and data representation for functional languages on the Java virtual machine

The Java Virtual Machine (JVM) offers an attractive runtime environment for programming language implementers. The JVM has a simple bytecode format, excellent performance, multiple state-of-the art garbage collectors, robust backwards compatibility, and ...

research-article
CAnDL: a domain specific language for compiler analysis

Optimizing compilers require sophisticated program analysis and transformations to exploit modern hardware. Implementing the appropriate analysis for a compiler optimization is a time consuming activity. For example, in LLVM, tens of thousands of lines ...

research-article
Semantic reasoning about the sea of nodes

The Sea of Nodes intermediate representation was introduced by Cliff Click in the mid 90s as an enhanced Static Single Assignment (SSA) form. It improves on the initial SSA form by relaxing the total order on instructions in basic blocks into explicit ...

SESSION: Compile- and Run-Time Analysis
research-article
Towards a compiler analysis for parallel algorithmic skeletons

Parallelizing compilers aim to detect data-parallel loops in sequential programs, which -- after suitable transformation -- can be safely and profitably executed in parallel. However, in the traditional model safe parallelization requires provable ...

research-article
Generalized profile-guided iterator recognition

Iterators prescribe the traversal of data structures and determine loop termination, and many loop analyses and transformations require their exact identification. While recognition of iterators is a straight-forward task for affine loops, the situation ...

research-article
Efficient dynamic analysis for Node.js

Due to its popularity, there is an urgent need for dynamic program-analysis tools for Node.js, helping developers find bugs, performance bottlenecks, and bad coding practices. Frameworks based on code-level instrumentation enable dynamic analyses close ...

Contributors
  • McGill University
  • UNSW Sydney

Index Terms

  1. Proceedings of the 27th International Conference on Compiler Construction
    Please enable JavaScript to view thecomments powered by Disqus.

    Recommendations