Skip to content

Commit

Permalink
Fix build system and errors for Sunrise code (#1192)
Browse files Browse the repository at this point in the history
* Fix build system and errors for Sunrise code

* Change dependency specification
  • Loading branch information
purvisa-at-google-com authored Aug 30, 2022
1 parent 88f5f31 commit 0964971
Show file tree
Hide file tree
Showing 7 changed files with 51 additions and 34 deletions.
4 changes: 2 additions & 2 deletions BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -456,8 +456,8 @@ test_suite(
"//gapis/stringtable/minidown/scanner:go_default_test",
"//gapis/stringtable/parser:go_default_test",
"//gapis/vertex:go_default_test",
"//replay2/handle_remapper:handle_remapper_test",
"//replay2/memory_remapper:memory_remapper_test",
"//replay2/handle_remapper:handle_remapper_tests",
"//replay2/memory_remapper:memory_remapper_tests",
"//test/integration/replay:go_default_test",
"//test/integration/service:go_default_test",
"//vulkan_generator/tests:test_vulkan_parsing",
Expand Down
5 changes: 5 additions & 0 deletions replay2/core_utils/non_copyable.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,9 @@
// See the License for the specific language governing permissions and
// limitations under the License.

#ifndef REPLAY2_CORE_UTILS_NON_COPYABLE_H
#define REPLAY2_CORE_UTILS_NON_COPYABLE_H

namespace agi {
namespace replay2 {

Expand All @@ -24,3 +27,5 @@ class NonCopyable {

} // namespace replay2
} // namespace agi

#endif
12 changes: 11 additions & 1 deletion replay2/handle_remapper/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,14 @@ basic_vulkan_generator(
target = "handle_remapper",
)

cc_import(
name = "handle_remapper_src_hdrs",
hdrs = glob(
[":handle_remapper_src"],
exclude = ["*.cc"],
),
)

cc_library(
name = "handle_remapper",
srcs = glob(
Expand All @@ -34,12 +42,14 @@ cc_library(
),
visibility = ["//visibility:public"],
deps = [
"handle_remapper_src_hdrs",
"//replay2/core_utils",
"//replay2/vulkan_base",
],
)

cc_test(
name = "handle_remapper_test",
name = "handle_remapper_tests",
srcs = [":handle_remapper_src"],
deps = [
"//replay2/core_utils",
Expand Down
2 changes: 1 addition & 1 deletion replay2/memory_remapper/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ cc_library(
)

cc_test(
name = "memory_remapper_test",
name = "memory_remapper_tests",
srcs = glob(["tests/*.cc"]),
deps = [
"memory_remapper",
Expand Down
8 changes: 5 additions & 3 deletions replay2/replay_context/replay_context.h
Original file line number Diff line number Diff line change
Expand Up @@ -16,17 +16,19 @@
#include "replay2/handle_remapper/handle_remapper.h"
#include "replay2/memory_remapper/memory_remapper.h"

#include <string>

namespace agi {
namespace replay2 {

class ReplayContext : public NonCopyable {
public:
ReplayContext(const std::string& replayIdentifier) : replayIdentifier_(replayIdentifier_) {}
ReplayContext(const std::string& replayIdentifier) : replayIdentifier_(replayIdentifier) {}

const std::string& getReplayIdentifier() const { return replayIdentifier_; }

HandleRemapper& HandleRemapper() const { return handleRemapper_; }
MemoryRemapper& MemoryRemapper() const { return memoryRemapper_; }
HandleRemapper& getHandleRemapper() { return handleRemapper_; }
MemoryRemapper& getMemoryRemapper() { return memoryRemapper_; }

private:
std::string replayIdentifier_;
Expand Down
2 changes: 1 addition & 1 deletion tools/build/rules/vulkan_generator.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@ def _basic_vulkan_generator_impl(ctx):
inputs = [ctx.file._xml],
outputs = outs,
arguments = [
ctx.file._xml.path,
ctx.attr.target,
outs[0].dirname,
ctx.file._xml.path,
],
mnemonic = ("".join(["BasicVulkanGenerator", ctx.attr.target])).replace("_", ""),
executable = ctx.executable._generator,
Expand Down
52 changes: 26 additions & 26 deletions vulkan_generator/handle_remapper/generator.py
Original file line number Diff line number Diff line change
Expand Up @@ -193,7 +193,7 @@ def generate_handle_remapper_h(file_path: Path, vulkan_metadata: types.VulkanInf
arguments={"captureHandle": "VulkanHandle"}))
public_functions.append("")

remapper_class_def = codegen.create_class_definition("VulkanHandleRemapper",
remapper_class_def = codegen.create_class_definition("HandleRemapper",
public_inheritance=["NonCopyable"],
public_functions=public_functions,
public_members=public_members,
Expand Down Expand Up @@ -230,18 +230,18 @@ def generate_handle_remapper_cpp(file_path: Path, vulkan_metadata: types.VulkanI
implgenerator = dispatchable_implgen if dispatchable else nondispatchable_implgen

add_definition = codegen.create_function_definition(
f"""VulkanHandleRemapper::{handle_add_name(handle)}""",
f"""HandleRemapper::{handle_add_name(handle)}""",
arguments={"captureHandle": "VulkanHandle",
"replayHandle": "VulkanHandle"},
code=implgenerator.handle_add_code(handle))

remove_definition = codegen.create_function_definition(
f"""VulkanHandleRemapper::{handle_remove_name(handle)}""",
f"""HandleRemapper::{handle_remove_name(handle)}""",
arguments={"captureHandle": "VulkanHandle"},
code=implgenerator.handle_remove_code(handle))

remap_definition = codegen.create_function_definition(
f"""VulkanHandleRemapper::{handle_remap_name(handle)}""",
f"""HandleRemapper::{handle_remap_name(handle)}""",
arguments={"captureHandle": "VulkanHandle"},
return_type="VulkanHandle",
code=implgenerator.handle_remap_code(handle))
Expand Down Expand Up @@ -275,51 +275,51 @@ def generate_handle_remapper_tests(file_path: Path, vulkan_metadata: types.Vulka

for handle in vulkan_metadata.types.handles:
tests_cpp.write(dedent(f"""
TEST(VulkanHandleRemapper, {handle}BasicRemap) {{
VulkanHandleRemapper mapper;
EXPECT_THROW(mapper.{handle_remap_name(handle)}(1234), VulkanHandleRemapper::RemapNonExistantHandleException);
TEST(HandleRemapper, {handle}BasicRemap) {{
HandleRemapper mapper;
EXPECT_THROW(mapper.{handle_remap_name(handle)}(1234), HandleRemapper::RemapNonExistantHandleException);
EXPECT_NO_THROW(mapper.{handle_add_name(handle)}(1234, 5678));
EXPECT_NO_THROW(EXPECT_EQ(mapper.{handle_remap_name(handle)}(1234), 5678));
EXPECT_NO_THROW(mapper.{handle_remove_name(handle)}(1234));
EXPECT_THROW(mapper.{handle_remap_name(handle)}(1234), VulkanHandleRemapper::RemapNonExistantHandleException);
EXPECT_THROW(mapper.{handle_remap_name(handle)}(1234), HandleRemapper::RemapNonExistantHandleException);
}}"""))

tests_cpp.write(dedent(f"""
TEST(VulkanHandleRemapper, {handle}UnknownRemap) {{
VulkanHandleRemapper mapper;
TEST(HandleRemapper, {handle}UnknownRemap) {{
HandleRemapper mapper;
EXPECT_NO_THROW(mapper.{handle_add_name(handle)}(1234, 5678));
EXPECT_THROW(mapper.{handle_remap_name(handle)}(5678), VulkanHandleRemapper::RemapNonExistantHandleException);
EXPECT_THROW(mapper.{handle_remap_name(handle)}(5678), HandleRemapper::RemapNonExistantHandleException);
}}"""))

if vulkan_metadata.types.handles[handle].dispatchable:
tests_cpp.write(dedent(f"""
TEST(VulkanHandleRemapper, Dispatchable{handle}Redefinition) {{
VulkanHandleRemapper mapper;
TEST(HandleRemapper, Dispatchable{handle}Redefinition) {{
HandleRemapper mapper;
EXPECT_NO_THROW(mapper.{handle_add_name(handle)}(1234, 5678));
EXPECT_THROW(mapper.{handle_add_name(handle)}(1234, 5678), VulkanHandleRemapper::HandleCollisionException);
EXPECT_THROW(mapper.{handle_add_name(handle)}(1234, 8765), VulkanHandleRemapper::HandleCollisionException);
EXPECT_THROW(mapper.{handle_add_name(handle)}(1234, 5678), HandleRemapper::HandleCollisionException);
EXPECT_THROW(mapper.{handle_add_name(handle)}(1234, 8765), HandleRemapper::HandleCollisionException);
EXPECT_NO_THROW(EXPECT_EQ(mapper.{handle_remap_name(handle)}(1234), 5678));
EXPECT_NO_THROW(mapper.{handle_remove_name(handle)}(1234));
EXPECT_THROW(mapper.{handle_remap_name(handle)}(1234), VulkanHandleRemapper::RemapNonExistantHandleException);
EXPECT_THROW(mapper.{handle_remove_name(handle)}(1234), VulkanHandleRemapper::RemoveNonExistantHandleException);
EXPECT_THROW(mapper.{handle_remap_name(handle)}(1234), VulkanHandleRemapper::RemapNonExistantHandleException);
EXPECT_THROW(mapper.{handle_remove_name(handle)}(1234), VulkanHandleRemapper::RemoveNonExistantHandleException);
EXPECT_THROW(mapper.{handle_remap_name(handle)}(1234), VulkanHandleRemapper::RemapNonExistantHandleException);
EXPECT_THROW(mapper.{handle_remap_name(handle)}(1234), HandleRemapper::RemapNonExistantHandleException);
EXPECT_THROW(mapper.{handle_remove_name(handle)}(1234), HandleRemapper::RemoveNonExistantHandleException);
EXPECT_THROW(mapper.{handle_remap_name(handle)}(1234), HandleRemapper::RemapNonExistantHandleException);
EXPECT_THROW(mapper.{handle_remove_name(handle)}(1234), HandleRemapper::RemoveNonExistantHandleException);
EXPECT_THROW(mapper.{handle_remap_name(handle)}(1234), HandleRemapper::RemapNonExistantHandleException);
}}"""))
else:
tests_cpp.write(dedent(f"""
TEST(VulkanHandleRemapper, NonDispatchable{handle}Redefinition) {{
VulkanHandleRemapper mapper;
TEST(HandleRemapper, NonDispatchable{handle}Redefinition) {{
HandleRemapper mapper;
EXPECT_NO_THROW(mapper.{handle_add_name(handle)}(1234, 5678));
EXPECT_NO_THROW(mapper.{handle_add_name(handle)}(1234, 5678));
EXPECT_THROW(mapper.{handle_add_name(handle)}(1234, 8765), VulkanHandleRemapper::NonDispatchableHandleRedefinitionException);
EXPECT_THROW(mapper.{handle_add_name(handle)}(1234, 8765), HandleRemapper::NonDispatchableHandleRedefinitionException);
EXPECT_NO_THROW(EXPECT_EQ(mapper.{handle_remap_name(handle)}(1234), 5678));
EXPECT_NO_THROW(mapper.{handle_remove_name(handle)}(1234));
EXPECT_NO_THROW(EXPECT_EQ(mapper.{handle_remap_name(handle)}(1234), 5678));
EXPECT_NO_THROW(mapper.{handle_remove_name(handle)}(1234));
EXPECT_THROW(mapper.{handle_remap_name(handle)}(1234), VulkanHandleRemapper::RemapNonExistantHandleException);
EXPECT_THROW(mapper.{handle_remove_name(handle)}(1234), VulkanHandleRemapper::RemoveNonExistantHandleException);
EXPECT_THROW(mapper.{handle_remap_name(handle)}(1234), VulkanHandleRemapper::RemapNonExistantHandleException);
EXPECT_THROW(mapper.{handle_remap_name(handle)}(1234), HandleRemapper::RemapNonExistantHandleException);
EXPECT_THROW(mapper.{handle_remove_name(handle)}(1234), HandleRemapper::RemoveNonExistantHandleException);
EXPECT_THROW(mapper.{handle_remap_name(handle)}(1234), HandleRemapper::RemapNonExistantHandleException);
}}"""))

tests_cpp.write(dedent("""
Expand Down

0 comments on commit 0964971

Please sign in to comment.