mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-12-03 21:10:30 +00:00
LibGLSL: Fill LinkedShaders with dummy IR code
This commit is contained in:
parent
c88bc74afd
commit
5bab17596d
Notes:
sideshowbarker
2024-07-17 07:48:42 +09:00
Author: https://github.com/sunverwerth Commit: https://github.com/SerenityOS/serenity/commit/5bab17596d Pull-request: https://github.com/SerenityOS/serenity/pull/16225 Reviewed-by: https://github.com/ADKaster ✅ Reviewed-by: https://github.com/gmta ✅ Reviewed-by: https://github.com/supercomputer7
2 changed files with 26 additions and 1 deletions
|
@ -11,12 +11,23 @@
|
|||
#include <AK/String.h>
|
||||
#include <AK/Vector.h>
|
||||
#include <LibGLSL/ObjectFile.h>
|
||||
#include <LibGPU/IR.h>
|
||||
|
||||
namespace GLSL {
|
||||
|
||||
// FIXME: Implement this class
|
||||
|
||||
class LinkedShader final {
|
||||
public:
|
||||
LinkedShader(const GPU::IR::Shader& intermediate_shader_representation)
|
||||
: m_intermediate_shader_representation { intermediate_shader_representation }
|
||||
{
|
||||
}
|
||||
|
||||
GPU::IR::Shader const& intermediate_shader_representation() const { return m_intermediate_shader_representation; }
|
||||
|
||||
private:
|
||||
GPU::IR::Shader m_intermediate_shader_representation;
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -12,7 +12,21 @@ ErrorOr<NonnullOwnPtr<LinkedShader>> Linker::link(Vector<ObjectFile const*> cons
|
|||
{
|
||||
// FIXME: implement this function
|
||||
m_messages = TRY(String::from_utf8(""sv));
|
||||
return adopt_own(*new LinkedShader());
|
||||
|
||||
GPU::IR::Shader shader;
|
||||
|
||||
auto input_name = TRY(String::from_utf8("input0"sv));
|
||||
auto output_name = TRY(String::from_utf8("output0"sv));
|
||||
TRY(shader.inputs.try_append({ move(input_name), GPU::IR::StorageType::Vector4 }));
|
||||
TRY(shader.outputs.try_append({ move(output_name), GPU::IR::StorageType::Vector4 }));
|
||||
GPU::IR::Instruction instruction {
|
||||
GPU::IR::Opcode::Move,
|
||||
{ { GPU::IR::StorageLocation::Input, 0 } },
|
||||
{ GPU::IR::StorageLocation::Output, 0 }
|
||||
};
|
||||
TRY(shader.instructions.try_append(instruction));
|
||||
|
||||
return adopt_own(*new LinkedShader(shader));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue