[LLVMdev] LLVM Weekly - #42, Oct 20th 2014

Alex Bradbury asb at asbradbury.org
Mon Oct 20 04:29:59 PDT 2014


LLVM Weekly - #42, Oct 20th 2014
================================

If you prefer, you can read a HTML version of this email at
<http://llvmweekly.org/issue/42>.

Welcome to the forty-second issue of LLVM Weekly, a weekly newsletter
(published every Monday) covering developments in LLVM, Clang, and related
projects. LLVM Weekly is brought to you by [Alex
Bradbury](http://asbradbury.org).
Subscribe to future issues at <http://llvmweekly.org> and pass it on to anyone
else you think may be interested. Please send any tips or feedback to
<asb at asbradbury.org>, or @llvmweekly or @asbradbury on Twitter.

If you're local to London, you may be interested to know that I'll be talking
about [lowRISC](http://www.lowrisc.org) at the [Open Source Hardware User
Group on Thursday](http://oshug.org/event/36).


## News and articles from around the web

ELLCC, the LLVM-based cross-compilation toolchain [now has pre-built binaries
for all LLVM
tools](http://article.gmane.org/gmane.comp.compilers.clang.devel/39439).

Eli Bendersky's repository of examples for using LLVM and Clang as libraries
and for building new passes aren't new, but they are incredibly useful for
newcomers to LLVM/Clang and I haven't featured them before. If you want to
build something using LLVM or Clang, the [llvm-clang-samples
repos](https://github.com/eliben/llvm-clang-samples) is one of the best places
to start.


## On the mailing lists

* If you enjoy bikeshedding, I have the perfect thread for you. [Should LLVM
change its naming convention for
variables](http://article.gmane.org/gmane.comp.compilers.llvm.devel/77786)?
There actually seems to be a lot of consensus that the current approach of
using capitalized variable names is weird.

* Richard Smith has proposed [switching the default C language mode from gnu99
to gnu11](http://article.gmane.org/gmane.comp.compilers.clang.devel/39379).
GNU trunk has just switched from gnu89 by default to gnu11. There seems to be
almost universal support for gnu11 by default.

* Junio Cezar writes to the mailing list [to share his experiments on time
taken in various LLVM
passes](http://article.gmane.org/gmane.comp.compilers.llvm.devel/77757). His
webpage has [plots of time taken in each stage for csmith-generated
programs](http://homepages.dcc.ufmg.br/~juniocezar/llvm/). Hal Finkel had some
[suggestions on improving the
analysis](http://article.gmane.org/gmane.comp.compilers.llvm.devel/77758).

* Bill Wendling is [stepping down as LLVM release
manager](http://article.gmane.org/gmane.comp.compilers.clang.devel/39357). He
nominated Tom Stellard and Hans Wennborg as his replacements, who have been
accepted by unanimous agreement.

* Chandler Carruth [suggests making DataLayout
non-optional](http://article.gmane.org/gmane.comp.compilers.llvm.devel/77997).


## LLVM commits

* Go LLVM bindings have been committed.
[r219976](http://reviews.llvm.org/rL219976).

* Invoking patchpoint intrinsics is now supported.
[r220055](http://reviews.llvm.org/rL220055).

* LLVM gained a workaround for a Cortex-A53 erratum.
[r219603](http://reviews.llvm.org/rL219603).

* Basic support for ARM Cortex-A17 was added.
[r219606](http://reviews.llvm.org/rL219606).

* The C API has been extended with the LLVMWriteBitcodeToMemoryBuffer
function. [r219643](http://reviews.llvm.org/rL219643).

* NumOperands has been moved from User to Value. On 64-bit host architectures
this reduces `sizeof(User)` and subclasses by 8.
[r219845](http://reviews.llvm.org/rL219845).

* The LLVMParseCommandLineOptions was added to the C API.
[r219975](http://reviews.llvm.org/rL219975).


## Clang commits

* Constant expressions can now be used in pragma loop hints.
[r219589](http://reviews.llvm.org/rL219589).

* The libclang API gained a function to retrieve the storage class of a
declaration. [r219809](http://reviews.llvm.org/rL219809).

* With the `-fsanitize-address-field-padding` flag, Clang can insert poisoned
paddings between fields in C++ classes to allow AddressSanitizer to find
intra-object overflow bugs. [r219961](http://reviews.llvm.org/rL219961).


## Other project commits

* lldb now supports a gdb-style batch mode.
[r219654](http://reviews.llvm.org/rL219654).



More information about the llvm-dev mailing list