-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
<chrono>: Cache QueryPerformanceFrequency() #646
Conversation
Looks like you're triggering an ICE (Internal Compiler Error) when targeting x86. |
wow. I think |
Actually, for |
Looks like you got some legitimate warnings you need to fix. Leaving the test results here because I need to re-run the CI on your PR because the machine running the x86 tests went down. |
:-) I really meant to access the variable once with I think it is a compiler issue with |
Looks like you need to suppress at 617 not 622. |
Now compilation succeeds, but there's some error with vcpkg: https://dev.azure.com/vclibs/09a07da7-73b5-4bba-8263-2aad1a16c33d/_apis/build/builds/2074/logs/52
Any idea? |
That looks like the Azure cache storage falling over. There isn't anything we can do about that but I believe we can treat this run as a green checkmark. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome! Thanks!
I have one concern. As on x86 So if this change would be available as update of old runtime libraries, it needs confirmation, if none of Windows version affected by the update can run on a CPU without According to this, any system starting NT 5.1 (i.e. Windows XP / Windows 2003) will fail with |
It is true that IA32 CPUs exist without that instruction, but none supported by Visual C++. (The instruction was added on the original Pentium) We do support Opterons from 2005 that don't have cmpxchg16b though. (This is why |
Sorry about unnecessary change. |
Nothing to be sorry about :). I agree using the pure export macro is strange for that |
@cbezault Is that TR1 failure the same race you investigated before? |
It is a surprising to have a race in a single-threaded program. Unless it is a race against some (asynchronous) cache. Maybe something simpler, like out of disk space? |
@AlexGuteniev Multiple copies of the same test .exe are running and trying to party on the same temporary file. I think. |
Yes that's the spurious |
/azp run |
Azure Pipelines successfully started running 1 pipeline(s). |
Thanks for your contribution! |
Description
Address #448 by using
std::atomic
relaxed accessChecklist
Be sure you've read README.md and understand the scope of this repo.
If you're unsure about a box, leave it unchecked. A maintainer will help you.
_Ugly
as perhttps://eel.is/c++draft/lex.name#3.1 or there are no product code changes.
verified by an STL maintainer before automated testing is enabled on GitHub,
leave this unchecked for initial submission).
members, adding virtual functions, changing whether a type is an aggregate
or trivially copyable, etc.).
the C++ Working Draft (including any cited standards), other WG21 papers
(excluding reference implementations outside of proposed standard wording),
and LWG issues as reference material. If they were derived from a project
that's already listed in NOTICE.txt, that's fine, but please mention it.
If they were derived from any other project (including Boost and libc++,
which are not yet listed in NOTICE.txt), you must mention it here,
so we can determine whether the license is compatible and what else needs
to be done.