diff options
Diffstat (limited to 'src/gallium/drivers/swr/rasterizer/jitter')
-rw-r--r-- | src/gallium/drivers/swr/rasterizer/jitter/builder_misc.cpp | 12 | ||||
-rw-r--r-- | src/gallium/drivers/swr/rasterizer/jitter/builder_misc.h | 2 |
2 files changed, 14 insertions, 0 deletions
diff --git a/src/gallium/drivers/swr/rasterizer/jitter/builder_misc.cpp b/src/gallium/drivers/swr/rasterizer/jitter/builder_misc.cpp index 0148d8eb8ac..704b0f259c9 100644 --- a/src/gallium/drivers/swr/rasterizer/jitter/builder_misc.cpp +++ b/src/gallium/drivers/swr/rasterizer/jitter/builder_misc.cpp @@ -756,6 +756,18 @@ namespace SwrJit return SELECT(cmp, a, b); } + Value *Builder::PMAXUD(Value* a, Value* b) + { + Value* cmp = ICMP_UGT(a, b); + return SELECT(cmp, a, b); + } + + Value *Builder::PMINUD(Value* a, Value* b) + { + Value* cmp = ICMP_ULT(a, b); + return SELECT(cmp, a, b); + } + // Helper function to create alloca in entry block of function Value* Builder::CreateEntryAlloca(Function* pFunc, Type* pType) { diff --git a/src/gallium/drivers/swr/rasterizer/jitter/builder_misc.h b/src/gallium/drivers/swr/rasterizer/jitter/builder_misc.h index 5195678b4c4..9660bc65f02 100644 --- a/src/gallium/drivers/swr/rasterizer/jitter/builder_misc.h +++ b/src/gallium/drivers/swr/rasterizer/jitter/builder_misc.h @@ -128,6 +128,8 @@ Value *CVTPH2PS(Value* a, const llvm::Twine& name = ""); Value *CVTPS2PH(Value* a, Value* rounding); Value *PMAXSD(Value* a, Value* b); Value *PMINSD(Value* a, Value* b); +Value *PMAXUD(Value* a, Value* b); +Value *PMINUD(Value* a, Value* b); Value *VABSPS(Value* a); Value *FMADDPS(Value* a, Value* b, Value* c); |