Compilers

C and C++ logo
Article

Making memcpy(NULL, NULL, 0) well-defined

Nikita Popov

C2y makes memcpy(NULL, NULL, 0) and other zero-length operations on null pointers well defined. This removes a source of bugs that may result in security issues.

Feature image for the C programming language.
Article

A new constant expression interpreter for Clang, Part 2

Timm Baeder

A popular technique modern compilers use to improve the runtime performance of compiled code is to perform computations at compile time instead of at runtime. However, constant expressions need to be evaluated at compile time for a variety of reasons. To help resolve this problem, I've been working on improving the Clang's constant interpreter.

Vulnerability analysis of Golang applications and more with Red Hat CodeReady Dependency Analytics v0.3.2
Article

Register allocation in the Go compiler

Vladimir Makarov

Dive into register allocation in the Go compiler, including the register allocator's components, how it works, and its advantages and disadvantages.

Configure a Jupyter notebook to use GPUs for AI/ML modeling
Article

What is GPU programming?

Kenny Ge

The first of a four-part series on introductory GPU programming, this article provides a basic overview of the GPU programming model.

Featured image for: SCTP over UDP in the Linux kernel.
Article

Adding support for s390x in LLD, the LLVM linker

Tulio Magno Quites Machado Filho

Learn about the work involved in adding support for the s390x architecture in LLD, the LLVM linker: methods, results, and benefits for the community.

Featured image for: Value range propagation in GCC with Project Ranger.
Article

A practical guide to linker section ordering

Nick Clifton

Learn how to use a linker's section ordering feature to experiment with the layout of code and data in memory, without the need to write full linker scripts.

Featured image for: Value range propagation in GCC with Project Ranger.
Article

New C++ features in GCC 14

Marek Polacek

Discover new features and enhancements in the C++ front end in GCC 14, the next major version of the GNU Compiler Collection.

Red Hat Developer - Build Here Go Anywhere
Page

Red Hat Developers

Join Red Hat Developer for the software and tutorials to develop cloud applications using Kubernetes, microservices, serverless and Linux.

Featured image for: Value range propagation in GCC with Project Ranger.
Article

The new oracles of GCC

Andrew MacLeod

This article summarizes the new improvements added to GCC optimizers in the form of an oracle.

Featured image for Best of Linux 2023 that shows a computing setup.
Article

Our top Linux articles for developers in 2023

Colleen Lobner

Check out the top 10 Linux articles we published for developers in 2023, covering new features in Red Hat Enterprise Linux, containers, GCC 13, and more.

Featured image for: Value range propagation in GCC with Project Ranger.
Article

Vectorization optimization in GCC

Jakub Jelínek

Learn how developers can achieve higher performance using the GCC compiler system's vectorization features.