[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

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
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

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
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

* 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

## LLVM commits

* Go LLVM bindings have been committed.

* Invoking patchpoint intrinsics is now supported.

* LLVM gained a workaround for a Cortex-A53 erratum.

* Basic support for ARM Cortex-A17 was added.

* 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.

* The LLVMParseCommandLineOptions was added to the C API.

## Clang commits

* Constant expressions can now be used in pragma loop hints.

* 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.

More information about the llvm-dev mailing list