CC Blog Newsletter Product News Tech News

SiFive Licenses emRun++ From Segger to Enhance Performance and Code Size

Written by Stephen Vicinanza

Segger, just two weeks ago, announced it had licensed emRun++ to SiFive, the leader and founders of the RISC-V computing platform.

emRun++ is a complete C++ standard library specifically designed and optimized for GCC/LLVM-based toolchains as well as embedded systems. The system is based on SEGGER’s efficient emRun and emFloat runtime and floating-point libraries.

“After licensing and integrating SEGGER’s emRun C runtime library for RISC-V into our Freedom Studio IDE and Freedom Tools in 2021 and experiencing its superior code size and performance compared to existing open-source alternatives, the next step was to consider C++ support. It was an easy decision to upgrade to emRun++ once it became available for licensing,” said Sam Grove, director of Product Management – Software at SiFive. “As a modern programming language, C++ has become increasingly important in the embedded sector, offering developers more and more options. It is essential for SiFive to be able to offer a state-of-the-art C++ library to our customers. emRun++ is perfectly suited for this purpose.”

emRun++ guarantees low instruction counts with fast heap operations, enabling hard real-time applications to be written in C++. To support the often seen embedded use cases even when resources are constrained in the targets. The C++ library is available in a “no throw” configuration, avoiding overhead associated with exceptions.

Designed for embedded systems, emRun++ offers interrupt-safe memory management. This allows the use of C++ in Interrupt Service Routines

“SEGGER’s emRun++ is a proven part of our multi-platform Embedded Studio IDE. The memory footprint and the performance are simply amazing,” says Rolf Segger, founder of SEGGER. “SiFive customers have already been enjoying the benefits of the SEGGER emRun C library, and soon, C++ developers using SiFive tools will also benefit from emRun++.”

emRun++ includes a complete C++ 17 Standard Library with standard algorithms such as sorting, searching, and transformations, and generic container templates that include sets, vectors, lists, queues, stacks and maps, function objects, iterators, localization, strings, and streams. There are utility functions for everyday use cases.

For more information on emRum++ visit the information page here.


SiFive Inc. |

Keep up-to-date with our FREE Weekly Newsletter!

Don't miss out on upcoming issues of Circuit Cellar.

Note: We’ve made the Dec 2022 issue of Circuit Cellar available as a free sample issue. In it, you’ll find a rich variety of the kinds of articles and information that exemplify a typical issue of the current magazine.

Would you like to write for Circuit Cellar? We are always accepting articles/posts from the technical community. Get in touch with us and let's discuss your ideas.

Sponsor this Article

For the past 8 years, I have been writing about embedded technologies, added to my technical, academic, and medical editorial experience, with companies like Elsevier and Cambridge University Press. I tell people to read what I write, not try to pronounce my last name. I am always available for comments and suggestions you can reach me at and I promise I will take the time to reach back out to you. I live in the North East with my wonderful family.

Supporting Companies

Upcoming Events

Copyright © KCK Media Corp.
All Rights Reserved

Copyright © 2024 KCK Media Corp.

SiFive Licenses emRun++ From Segger to Enhance Performance and Co…

by Stephen Vicinanza time to read: 1 min