How to get in64_t working as well as C++ builds
Hi everyone,

I'm currently working on my Master's thesis where I need to implement a software algorithm using 36 bit integers. My first approach was using the int64_t C type to represent my number. While it all worked fine on my local machine the algorithm broke in the Pulpissimo simulator.

After a while of debugging I figured out that the int64_t type does not work for me. To get started I modified `pulp-rt-examples/hello/test.c` to the code printed below, which is also a small example showing the issue that int64_t types always return the same value. I'm not sure whether this is a bug or I need to reconfigure something.

Do you have any idea how to solve this? Maybe I need to activate some compile flag or is there some 64-bit extension that I could easily add to the processor core?

I saw that the compiler does also support C++ so I wanted to give this a try but I couldn't find an example project to see how I can get the C++ compiler running. Simply changing the file extension from *.c to *.cpp did not work unfortunately.

Thank you very much Smile


#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main()
 // Everything works when changing
 // int64_t to int32_t
 int64_t foo = 42;

 // Prints 0 instead of 42
 printf("\r\n%ld\r\n", foo);

 return 0;

Messages In This Thread
How to get in64_t working as well as C++ builds - by Dom2231 - 06-30-2021, 01:57 PM

Forum Jump: