[all-commits] [llvm/llvm-project] c48653: [PowerPC] Implement Elliptic Curve Cryptography Bu...
Lei Huang via All-commits
all-commits at lists.llvm.org
Wed Apr 15 10:41:27 PDT 2026
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: c4865380622f229188f29ef23d09eb3a564762ca
https://github.com/llvm/llvm-project/commit/c4865380622f229188f29ef23d09eb3a564762ca
Author: Lei Huang <lei at ca.ibm.com>
Date: 2026-04-15 (Wed, 15 Apr 2026)
Changed paths:
M clang/include/clang/Basic/BuiltinsPPC.def
M clang/lib/Basic/Targets/PPC.cpp
M clang/lib/Basic/Targets/PPC.h
A clang/test/CodeGen/PowerPC/builtins-ecc.c
A clang/test/Sema/PowerPC/builtins-ecc-error.c
M llvm/include/llvm/IR/IntrinsicsPowerPC.td
M llvm/lib/Target/PowerPC/PPCInstrFuture.td
M llvm/lib/Target/PowerPC/PPCInstrP10.td
A llvm/test/CodeGen/PowerPC/builtins-ecc.ll
Log Message:
-----------
[PowerPC] Implement Elliptic Curve Cryptography Builtins (#184681)
Add support for the following ISA Future elliptic curve cryptograpy
builtins.
* Builtins with immediate parameters:
vector unsigned char __builtin_xxmulmul(vector unsigned char, vector
unsigned char, unsigned int);
vector unsigned char __builtin_xxmulmulhiadd(vector unsigned char,
vector unsigned char, unsigned int, unsigned int, unsigned int); vector
unsigned char __builtin_xxmulmulloadd(vector unsigned char, vector
unsigned char, unsigned int, unsigned int); vector unsigned char
__builtin_xxssumudm(vector unsigned char, vector unsigned char, unsigned
int);
vector unsigned char __builtin_xxssumudmc(vector unsigned char, vector
unsigned char, unsigned int);
vector unsigned char __builtin_xxssumudmcext(vector unsigned char,
vector unsigned char, vector unsigned char, unsigned int);
* Builtins with two vector parameters (no immediates):
vector unsigned char __builtin_xsaddadduqm(vector unsigned char, vector
unsigned char);
vector unsigned char __builtin_xsaddaddsuqm(vector unsigned char, vector
unsigned char);
vector unsigned char __builtin_xsaddsubuqm(vector unsigned char, vector
unsigned char);
vector unsigned char __builtin_xsaddsubsuqm(vector unsigned char, vector
unsigned char);
vector unsigned char __builtin_xsmerge2t1uqm(vector unsigned char,
vector unsigned char);
vector unsigned char __builtin_xsmerge2t2uqm(vector unsigned char,
vector unsigned char);
vector unsigned char __builtin_xsmerge2t3uqm(vector unsigned char,
vector unsigned char);
vector unsigned char __builtin_xsmerge3t1uqm(vector unsigned char,
vector unsigned char);
vector unsigned char __builtin_xsrebase2t1uqm(vector unsigned char,
vector unsigned char);
vector unsigned char __builtin_xsrebase2t2uqm(vector unsigned char,
vector unsigned char);
vector unsigned char __builtin_xsrebase2t3uqm(vector unsigned char,
vector unsigned char);
vector unsigned char __builtin_xsrebase2t4uqm(vector unsigned char,
vector unsigned char);
vector unsigned char __builtin_xsrebase3t1uqm(vector unsigned char,
vector unsigned char);
vector unsigned char __builtin_xsrebase3t2uqm(vector unsigned char,
vector unsigned char);
vector unsigned char __builtin_xsrebase3t3uqm(vector unsigned char,
vector unsigned char);
Assisted by AI.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list