================ @@ -348,6 +348,20 @@ static inline unsigned long _inpd(unsigned short port) { return ret; } +static inline int _outp(unsigned short port, int data) { ---------------- MalaySanghi wrote:
There's 2 differences between _outp and __outbyte. First, the newer intrinsics don't return a value. Second, __outbyte signature is ``` void __outbyte( unsigned short Port, unsigned char Data ); ``` Note that the second input is unsigned char instead of int. This is likely because _outp is supposed to write a byte. Other than that, I have verified that renaming to __outbyte works and is functionally equivalent. When lowered via microsoft's cl, the asm is identical. https://github.com/llvm/llvm-project/pull/93774 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits