Results 171 to 180 of about 3,335 (212)
Some of the next articles are maybe not open access.

Flexible on-stack replacement in LLVM

Proceedings of the 2016 International Symposium on Code Generation and Optimization, 2016
On-Stack Replacement (OSR) is a technique for dynamically transferring execution between different versions of a function at run time. OSR is typically used in virtual machines to interrupt a long-running function and recompile it at a higher optimization level, or to replace it with a different one when a speculative assumption made during its ...
D'ELIA, DANIELE CONO, DEMETRESCU, Camil
openaire   +1 more source

Llvm-Dimeta: A Library for Extracting Source-Level Type Information in LLVM IR Using Debug Metadata

open access: yes
LLVM frontends like Clang preserve source-level type information in the intermediate representation (IR) primarily through debug metadata. Although intended for debuggers, this metadata benefits compiler tools like sanitizers, which need type information
Alexander Huck   +2 more
exaly   +2 more sources

Weak Memory Models as LLVM-to-LLVM Transformations

2016
Data races are among the most difficult software bugs to discover. They arise from multiple threads accessing the same memory location, a situation which is often hard to discern from source code alone. Detection of such bugs is further complicated by individual CPUs' use of relaxed memory models. As a matter of fact, proving absence of data races is a
Vladimír Still   +2 more
openaire   +1 more source

LLVM Framework: Research and Applications

2023 19th International Conference on Natural Computation, Fuzzy Systems and Knowledge Discovery (ICNC-FSKD), 2023
Chenyang Li, Jiye Jiao
exaly   +3 more sources

Devirtualization in LLVM

Proceedings Companion of the 2017 ACM SIGPLAN International Conference on Systems, Programming, Languages, and Applications: Software for Humanity, 2017
Devirtualization is an optimization changing indirect (virtual) calls to direct calls. It improves performance by allowing extra inlining and removal of redundant loads. This paper presents a novel way of handling C++ devirtualization in LLVM by unifying virtual table loads across calls using different SSA values to represent different dynamic types.
openaire   +1 more source

Multi-dimensional Vectorization in LLVM

Proceedings of the 5th Workshop on Programming Models for SIMD/Vector Processing, 2019
Loop vectorization is a classic technique to exploit SIMD instructions in a productive way. In multi-dimensional vectorization, multiple loops of a loop nest are vectorized at once. This exposes opportunities for data reuse, register tiling and more efficient memory accesses.In this work, we present TensorRV, a multi-dimensional vectorization framework
Simon Moll 0001   +3 more
openaire   +2 more sources

Crellvm: Verified Credible Compilation for LLVM

open access: yesACM SIGPLAN Notices, 2018
© 2018 Copyright held by the owner/author(s).Production compilers such as GCC and LLVM are large complex software systems, for which achieving a high level of reliability is hard.
Sanghoon Park   +21 more
exaly   +2 more sources

AliveInLean: A Verified LLVM Peephole Optimization Verifier

open access: yesLecture Notes in Computer Science, 2019
Ensuring that compiler optimizations are correct is important for the reliability of the entire software ecosystem, since all software is compiled. Alive [12] is a tool for verifying LLVMs peephole optimizations.
Nuno Lopes
exaly   +2 more sources

Tutorial: LLVM for Security Practitioners

2020 IEEE Secure Development (SecDev), 2020
Many security researchers need to build tools that analyze and transform code. For example, researchers may want to build security hardening tools, tools that find vulnerabilities within software, or tools that prove that a program is invulnerable to attack.
openaire   +1 more source

Heterogeneous Computation Migration on LLVM

2016
In past decades, the development of mobile applications was limited due to lack of enough computational power. To resolve this problem, the framework of mobile cloud computing (MCC) was proposed for offloading the massive computation tasks of mobile applications onto cloud centers for execution.
Tyng-Yeu Liang, Yu-Jie Lin
openaire   +2 more sources

Home - About - Disclaimer - Privacy