eddic 1.2.3 – Better data-flow analysis

eddic Logo

I finally finished the version 1.2.3 of eddic. I have been quite busy finishing my master thesis in february and then taking some vacations in United States, so this version came later than I wanted. The main change is about the speed of the data-flow optimizations. I refactored a lot the data-flow to make it [...]



eddic 1.2.2 – Performances, improved optimizations and additions to standard library

eddic Logo

These last weeks, I had more work than expected with my Master thesis so it took me longer to finish this new version of eddic. Moreover, I included more stuff than I though in this version. Anyway, I’m happy to announce the version 1.2.2 of eddic. It is a minor version regarding the language itself. [...]



eddic 1.2.1 – string, concatenation and vector

eddic Logo

Before preparing myself for New Year’s Eve, I decided to finish eddic 1.2.1, and it’s done ! This version is a small one, but add several improvements to the language and to the standard library. Many bugs have been fixed especially in the support of dynamic arrays and structures. The first important change is that [...]



eddic 1.2.0 – Single inheritance, copy construction

eddic Logo

I’m happy to release the version 1.2.0 of the EDDI Compiler (eddic). This new version introduces several major changes to the language. First of all, structures can now inherits from another structure. When it is done, the structure can use the members of the parent class. Below is an example of single inheritance in EDDI: [...]



C++ Benchmark – std::list VS boost::intrusive::list

Boost Logo

Recently, we saw that the std::list performance was not really good when it comes to searching it or iterating through it.In this post, we will see an alternative to the std::list: the boost::intrusive::list from the Boost C++ libraries. It is not a well known library but it can be useful in some specific cases. I [...]



CMake Testing – Rerun the last failed tests with CTest

CMake

Some time ago, we saw how to use CMake to run Boost Tests in paralel, now it is time for another tip. A feature that I think is lacking in CMake/CTest is a way to launch only the last failed tests. As it is not possible to do that directly, I posted the question on [...]



C++ benchmark – std::vector VS std::list VS std::deque

Charts

Last week, I wrote a benchmark comparing the performance of std::vector and std::list on different workloads. This previous article received a lot of comments and several suggestions to improve it. The present article is an improvement over the previous article. In this article, I will compare the performance of std::vector, std::list and std::deque on several [...]



C++ benchmark – std::vector VS std::list

C++ Logo

A updated version of this article is available: C++ benchmark – std::vector VS std::list VS std::deque In C++, the two most used data structures are the std::vector and the std::list. In this article, we will compare the performance in practice of these two data structures on several different workloads. In this article, when I talk [...]



GCC 4.7 vs CLang 3.1 on eddic

eddic Logo

Now that eddic can be compiled with CLang, I wanted to compare the differences in compilation time and in performance of the generated executable between those two compilers. The tests are done using GCC 4.7.2 and CLang 3.1 on Gentoo. Compilation Time The first thing that I tested has been the compilation time of the [...]



EDDI Compiler 1.1.4 – Graph Coloring Register Allocation

eddic Logo

I’m proud to announce the release of the version 1.1.4 of the EDDI Compiler (eddic). This version has taken me much more time than I thought but I also added much more features than I thought too. There are few changes of the language itself, the main changes are in the optimization passes or in [...]