Make dawn_native use the webgpu.h header

BUG=dawn:22

Change-Id: I66e2d998f5e09030e40ec88813cd65c492018fd0
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/12541
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
This commit is contained in:
Corentin Wallez
2019-10-23 11:57:41 +00:00
committed by Commit Bot service account
parent c833c0c592
commit 1f6c8c4d54
114 changed files with 1614 additions and 1617 deletions

View File

@@ -80,14 +80,14 @@ namespace wgpu {
TEST(BitmaskTests, ZeroOrOneBits) {
Color zero = static_cast<Color>(0);
ASSERT_TRUE(dawn::HasZeroOrOneBits(zero));
ASSERT_TRUE(dawn::HasZeroOrOneBits(Color::R));
ASSERT_TRUE(dawn::HasZeroOrOneBits(Color::G));
ASSERT_TRUE(dawn::HasZeroOrOneBits(Color::B));
ASSERT_TRUE(dawn::HasZeroOrOneBits(Color::A));
ASSERT_FALSE(dawn::HasZeroOrOneBits(static_cast<Color>(Color::R | Color::G)));
ASSERT_FALSE(dawn::HasZeroOrOneBits(static_cast<Color>(Color::G | Color::B)));
ASSERT_FALSE(dawn::HasZeroOrOneBits(static_cast<Color>(Color::B | Color::A)));
ASSERT_TRUE(wgpu::HasZeroOrOneBits(zero));
ASSERT_TRUE(wgpu::HasZeroOrOneBits(Color::R));
ASSERT_TRUE(wgpu::HasZeroOrOneBits(Color::G));
ASSERT_TRUE(wgpu::HasZeroOrOneBits(Color::B));
ASSERT_TRUE(wgpu::HasZeroOrOneBits(Color::A));
ASSERT_FALSE(wgpu::HasZeroOrOneBits(static_cast<Color>(Color::R | Color::G)));
ASSERT_FALSE(wgpu::HasZeroOrOneBits(static_cast<Color>(Color::G | Color::B)));
ASSERT_FALSE(wgpu::HasZeroOrOneBits(static_cast<Color>(Color::B | Color::A)));
}
} // namespace wgpu

View File

@@ -58,8 +58,8 @@ namespace {
void SetUp() override {
switch (GetParam()) {
case DawnFlavor::Native: {
mDevice = dawn::Device::Acquire(
reinterpret_cast<DawnDevice>(mNativeAdapter.CreateDevice(nullptr)));
mDevice = wgpu::Device::Acquire(
reinterpret_cast<WGPUDevice>(mNativeAdapter.CreateDevice(nullptr)));
mProcs = dawn_native::GetProcs();
break;
}
@@ -71,7 +71,7 @@ namespace {
clientDesc.serializer = mC2sBuf.get();
mWireClient = std::make_unique<dawn_wire::WireClient>(clientDesc);
mDevice = dawn::Device::Acquire(mWireClient->GetDevice());
mDevice = wgpu::Device::Acquire(mWireClient->GetDevice());
mProcs = mWireClient->GetProcs();
break;
}
@@ -86,7 +86,7 @@ namespace {
void TearDown() override {
// Destroy the device before freeing the instance or the wire client in the destructor
mDevice = dawn::Device();
mDevice = wgpu::Device();
}
protected:
@@ -96,20 +96,20 @@ namespace {
std::unique_ptr<utils::TerribleCommandBuffer> mC2sBuf;
std::unique_ptr<dawn_wire::WireClient> mWireClient;
dawn::Device mDevice;
wgpu::Device mDevice;
DawnProcTable mProcs;
};
// Test GetProcAddress with and without devices on some valid examples
TEST_P(GetProcAddressTests, ValidExamples) {
ASSERT_EQ(mProcs.getProcAddress(nullptr, "wgpuDeviceCreateBuffer"),
reinterpret_cast<DawnProc>(mProcs.deviceCreateBuffer));
reinterpret_cast<WGPUProc>(mProcs.deviceCreateBuffer));
ASSERT_EQ(mProcs.getProcAddress(mDevice.Get(), "wgpuDeviceCreateBuffer"),
reinterpret_cast<DawnProc>(mProcs.deviceCreateBuffer));
reinterpret_cast<WGPUProc>(mProcs.deviceCreateBuffer));
ASSERT_EQ(mProcs.getProcAddress(nullptr, "wgpuQueueSubmit"),
reinterpret_cast<DawnProc>(mProcs.queueSubmit));
reinterpret_cast<WGPUProc>(mProcs.queueSubmit));
ASSERT_EQ(mProcs.getProcAddress(mDevice.Get(), "wgpuQueueSubmit"),
reinterpret_cast<DawnProc>(mProcs.queueSubmit));
reinterpret_cast<WGPUProc>(mProcs.queueSubmit));
}
// Test GetProcAddress with and without devices on nullptr procName
@@ -140,9 +140,9 @@ namespace {
// freestanding function and not a method on an object.
TEST_P(GetProcAddressTests, GetProcAddressItself) {
ASSERT_EQ(mProcs.getProcAddress(nullptr, "wgpuGetProcAddress"),
reinterpret_cast<DawnProc>(mProcs.getProcAddress));
reinterpret_cast<WGPUProc>(mProcs.getProcAddress));
ASSERT_EQ(mProcs.getProcAddress(mDevice.Get(), "wgpuGetProcAddress"),
reinterpret_cast<DawnProc>(mProcs.getProcAddress));
reinterpret_cast<WGPUProc>(mProcs.getProcAddress));
}
INSTANTIATE_TEST_SUITE_P(,

View File

@@ -20,24 +20,24 @@ using namespace dawn_native;
// Tests for StageBit
TEST(PerStage, StageBit) {
ASSERT_EQ(StageBit(SingleShaderStage::Vertex), dawn::ShaderStage::Vertex);
ASSERT_EQ(StageBit(SingleShaderStage::Fragment), dawn::ShaderStage::Fragment);
ASSERT_EQ(StageBit(SingleShaderStage::Compute), dawn::ShaderStage::Compute);
ASSERT_EQ(StageBit(SingleShaderStage::Vertex), wgpu::ShaderStage::Vertex);
ASSERT_EQ(StageBit(SingleShaderStage::Fragment), wgpu::ShaderStage::Fragment);
ASSERT_EQ(StageBit(SingleShaderStage::Compute), wgpu::ShaderStage::Compute);
}
// Basic test for the PerStage container
TEST(PerStage, PerStage) {
PerStage<int> data;
// Store data using dawn::ShaderStage
// Store data using wgpu::ShaderStage
data[SingleShaderStage::Vertex] = 42;
data[SingleShaderStage::Fragment] = 3;
data[SingleShaderStage::Compute] = -1;
// Load it using dawn::ShaderStage
ASSERT_EQ(data[dawn::ShaderStage::Vertex], 42);
ASSERT_EQ(data[dawn::ShaderStage::Fragment], 3);
ASSERT_EQ(data[dawn::ShaderStage::Compute], -1);
// Load it using wgpu::ShaderStage
ASSERT_EQ(data[wgpu::ShaderStage::Vertex], 42);
ASSERT_EQ(data[wgpu::ShaderStage::Fragment], 3);
ASSERT_EQ(data[wgpu::ShaderStage::Compute], -1);
}
// Test IterateStages with kAllStages
@@ -51,9 +51,9 @@ TEST(PerStage, IterateAllStages) {
counts[stage] ++;
}
ASSERT_EQ(counts[dawn::ShaderStage::Vertex], 1);
ASSERT_EQ(counts[dawn::ShaderStage::Fragment], 1);
ASSERT_EQ(counts[dawn::ShaderStage::Compute], 1);
ASSERT_EQ(counts[wgpu::ShaderStage::Vertex], 1);
ASSERT_EQ(counts[wgpu::ShaderStage::Fragment], 1);
ASSERT_EQ(counts[wgpu::ShaderStage::Compute], 1);
}
// Test IterateStages with one stage
@@ -63,13 +63,13 @@ TEST(PerStage, IterateOneStage) {
counts[SingleShaderStage::Fragment] = 0;
counts[SingleShaderStage::Compute] = 0;
for (auto stage : IterateStages(dawn::ShaderStage::Fragment)) {
for (auto stage : IterateStages(wgpu::ShaderStage::Fragment)) {
counts[stage] ++;
}
ASSERT_EQ(counts[dawn::ShaderStage::Vertex], 0);
ASSERT_EQ(counts[dawn::ShaderStage::Fragment], 1);
ASSERT_EQ(counts[dawn::ShaderStage::Compute], 0);
ASSERT_EQ(counts[wgpu::ShaderStage::Vertex], 0);
ASSERT_EQ(counts[wgpu::ShaderStage::Fragment], 1);
ASSERT_EQ(counts[wgpu::ShaderStage::Compute], 0);
}
// Test IterateStages with no stage
@@ -79,11 +79,11 @@ TEST(PerStage, IterateNoStages) {
counts[SingleShaderStage::Fragment] = 0;
counts[SingleShaderStage::Compute] = 0;
for (auto stage : IterateStages(dawn::ShaderStage::Fragment & dawn::ShaderStage::Vertex)) {
for (auto stage : IterateStages(wgpu::ShaderStage::Fragment & wgpu::ShaderStage::Vertex)) {
counts[stage] ++;
}
ASSERT_EQ(counts[dawn::ShaderStage::Vertex], 0);
ASSERT_EQ(counts[dawn::ShaderStage::Fragment], 0);
ASSERT_EQ(counts[dawn::ShaderStage::Compute], 0);
ASSERT_EQ(counts[wgpu::ShaderStage::Vertex], 0);
ASSERT_EQ(counts[wgpu::ShaderStage::Fragment], 0);
ASSERT_EQ(counts[wgpu::ShaderStage::Compute], 0);
}