[PATCH] D82609: [PowerPC][Power10] Implement Vector Multiply High/Divide Extended Builtins in LLVM/Clang

Amy Kwan via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 25 16:23:53 PDT 2020


amyk created this revision.
amyk added reviewers: power-llvm-team, PowerPC, nemanjai, lei, saghir.
amyk added projects: LLVM, clang, PowerPC.
Herald added subscribers: shchenz, hiraditya.

This patch implements the following function prototypes to utilize the `vmulh[s|u][w|d]` and `vdive[s|u][w|d]` instructions:

  vector signed int vec_mulh (vector signed int a, vector signed int b);  
  vector unsigned int vec_mulh (vector unsigned int a, vector unsigned int b); 
  vector signed long long vec_mulh (vector signed long long a, vector signed long long b); 
  vector unsigned long long vec_mulh (vector unsigned long long a, vector unsigned long long b);
  
  vector signed int vec_dive (vector signed int a, vector signed int b);
  vector unsigned int vec_dive (vector unsigned int a, vector unsigned int b);
  vector signed long long vec_dive (vector signed long long a, vector signed long long b);
  vector unsigned long long vec_dive (vector unsigned long long a, vector unsigned long long b);

Depends on D82584 <https://reviews.llvm.org/D82584>


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D82609

Files:
  clang/include/clang/Basic/BuiltinsPPC.def
  clang/lib/Headers/altivec.h
  clang/test/CodeGen/builtins-ppc-p10vector.c
  llvm/include/llvm/IR/IntrinsicsPowerPC.td
  llvm/lib/Target/PowerPC/PPCInstrPrefix.td
  llvm/test/CodeGen/PowerPC/p10-vector-divide.ll
  llvm/test/CodeGen/PowerPC/p10-vector-multiply.ll
  llvm/test/MC/Disassembler/PowerPC/p10insts.txt
  llvm/test/MC/PowerPC/p10.s

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D82609.273544.patch
Type: text/x-patch
Size: 13567 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200625/7aedb750/attachment.bin>


More information about the llvm-commits mailing list