Skip to content

Conversation

@amontoison
Copy link
Member

No description provided.

@amontoison
Copy link
Member Author

@nimgould Can you confirm that clang doesn't support __float128?

@nimgould
Copy link
Contributor

nimgould commented Sep 5, 2025

I believe that __float128 is supported with clang on X86-64 machines, but not otherwise. Otherwise, the only support I know for sure is modern gcc, although there is some suggestion that intel also offer some support (quite what that means, I don't know, as I would have thought that either you do support something or you don't)

@amontoison
Copy link
Member Author

Ok thanks Nick!

@dpo
Copy link
Contributor

dpo commented Sep 5, 2025

FWIW I can now compile quad support with clang and static libraries.

Also, could you please delay these changes until after #100 has been merged?

@nimgould
Copy link
Contributor

nimgould commented Sep 5, 2025

I read somewhere earlier that although quad support is offered, many of the intrinsics are converted to double, and thus it is not a true 128 bit offering. But maybe that has changed. I'm sure it will do so eventually, and maybe eventually is now.

@amontoison
Copy link
Member Author

FWIW I can now compile quad support with clang and static libraries.

Also, could you please delay these changes until after #100 has been merged?

In #100, you drop all macros for the compilation of the C tests (-DINTEGER_64, -DWINDOWS, and the macro for quadruple precision). We only need to remove the flag for preprocessing.

@amontoison
Copy link
Member Author

@dpo I am on my way to Argonne but I can take your branch once there and do a rebase + a new release after.
Is it fine for you?

@dpo
Copy link
Contributor

dpo commented Sep 5, 2025

In #100, you drop all macros for the compilation of the C tests (-DINTEGER_64, -DWINDOWS, and the macro for quadruple precision). We only need to remove the flag for preprocessing.

Sorry, that was certainly not intentional. But it would have been helpful to comment there instead of opening a competing pull request. Anyways, I apologize.

@amontoison amontoison merged commit 309133d into master Sep 5, 2025
32 checks passed
@amontoison amontoison deleted the amontoison-patch-1 branch September 5, 2025 15:54
@amontoison
Copy link
Member Author

amontoison commented Sep 5, 2025

I also didn’t want to compete, I was just very busy yesterday and quickly did some tests between two meetings and a little bit last night. I also added CI tests with the cross-compiler on master, and it was easier to open a PR on top of it.

It should be good now, the release 2.5.7 was tagged.

@dpo
Copy link
Contributor

dpo commented Sep 5, 2025

I believe that __float128 is supported with clang on X86-64 machines, but not otherwise.

@nimgould You are right. Earlier, I was compiling locally with x86_64 clang and gfortran and it worked. I just tried with aarm64 clang and gfortran and compilation fails with

../include/cutest.h:64:9: error: __float128 is not supported on this target
   64 | typedef __float128   quadreal;

All is well with gcc-15.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants