HelloGCC 工作组成立于2007年,旨在营造一个自由、开放、共享的技术社区,讨论和学习开源工具和开源工具链。HelloGCC工作组每年都会举办一次技术讨论会,希望通过自由、开放、共享的方式来增进该领域技术的交流。 今年的HelloGCC技术讨论会(HelloGCC 2013)已于11月16日在北京成功举办,在讨论会上,来自该领域的专家、大牛分享了一些精彩的演讲。本文就将当天会议中的精彩议题介绍如下,你还可以结合PPT来进一步了解。 丁保增:在Cling上实现空指针解引用检测机制 Cling是欧洲核子研究中心(CERN)开发的C++交互式编译器,基于LLVM和Clang实现,可用于替代当前的C++解释器CINT,并且比CINT更加强大,主要体现在:
在当天的会议上,中科院软件所在读博士丁保增介绍了Cling的应用场景、实现,以及如何在Cling中实现动态地检测空指针解引用错误(这是丁保增在Google Summer of Code 2013活动中的项目)。 具体可参阅下面的幻灯片。
黃敬群:为嵌入式Linux构建一个最佳C运行时 黄敬群是台湾联发科技技术顾问、0xlab创始人,他从1999年就开始参与开源软件开发,致力于软硬件系统整合,比如Linux内核、嵌入式Linux、Android相关开发等。 黄敬群认为,一些Android开发工具链和系统库的优化经验,也可以重用于普通的嵌入式Linux项目,甚至是医疗设备上。 他在会议中分享了关于olibc的议题。olibc是从Bionic Libc(用于Android开发中)衍生出来的工具,而Bionic Libc是从NetBSD libc衍生出来的。olibc合并了一些SoC提供商(比如Qualcomm、TI、Linaro等)对于libc的增强改进,并且高可定制。对于ARM架构环境中,olibc还可以得益于ARMv7的特殊功能,比如NEON、Thumb-2、VFPv3/VFPv4以及最新的优化技术等。 具体可参阅下面的幻灯片。
程斌:GCC上归纳变量的优化 ARM工程师、开源工具链爱好者、GCC/Newlib开发者程斌分享了GCC上归纳变量的优化。 归纳变量是循环优化中非常重要的因素。不同的IV选取方法往往导致生成代码的大小和性能有很大的差距。 程斌目前在ARM上从事GNU工具链开发方面的工作,他在GCC的IV Optimization上做了很多的调优和修复,并在目标机上取得了明显的性能提升。他在本次会议上介绍了IVO的概况和他遇到的一些有趣的问题。 具体可参阅下面的幻灯片。 |