[CK] Fix windows build issues (#4819)

## Motivation

Full build on Windows is currently broken due to compiler errors, this
PR should help fix that. This is also holding up the following PR in the
TheRock: https://github.com/ROCm/TheRock/pull/3382

## Technical Details

1. I don't see a good reason to be nesting a windows include inside the
ck_tile namespace. It was causing compiler errors too: Windows.h comes
with min and max, which was conflicting with ck_tile::min and
ck_tile::max, so I moved it out. I also defined NOMINMAX to prevent this
inclusion in the future.
2. The TRUE/FALSE macros are already used by Windows.h, which causes an
error. So I've opted for True/False. You can see this pattern in other
rocm-libraries.
3. The M_PI macro isn't available, at least in the WIN32_LEAN_AND_MEAN
context, from \<cmath\> on Windows. We'll be able to use
std::numbers::v_pi\<float\> when we have C++20 support.
4. There was a missing \<chrono\> include.


## Test Plan

Test locally and make sure this doesn't impact existing CI.

## Test Result

Compiles locally and passes existing ci.

## Submission Checklist

- [ x ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
This commit is contained in:
Brock Hargreaves
2026-02-25 16:12:19 +00:00
committed by GitHub
parent 29c7a98292
commit 6c9436d0e5
4 changed files with 25 additions and 11 deletions

View File

@@ -8,6 +8,11 @@
#include <cassert>
#include <cmath>
#ifndef M_PI // Not there on windows...
#define M_PI 3.141592653589793238462643383279502884
#endif
#include <functional>
#include <iterator>
#include <optional>

View File

@@ -6,6 +6,7 @@
#include <iostream>
#include <algorithm>
#include <cmath>
#include <chrono>
#include "contraction_utils.hpp"
#include "ck_tile/host/reference/reference_batched_contraction.hpp"