Lines Matching full:hreg
42 /* The usual HReg abstraction. There are 16 real int regs, 6 real
46 extern void ppHRegAMD64 ( HReg );
48 extern HReg hregAMD64_RAX ( void );
49 extern HReg hregAMD64_RBX ( void );
50 extern HReg hregAMD64_RCX ( void );
51 extern HReg hregAMD64_RDX ( void );
52 extern HReg hregAMD64_RSP ( void );
53 extern HReg hregAMD64_RBP ( void );
54 extern HReg hregAMD64_RSI ( void );
55 extern HReg hregAMD64_RDI ( void );
56 extern HReg hregAMD64_R8 ( void );
57 extern HReg hregAMD64_R9 ( void );
58 extern HReg hregAMD64_R10 ( void );
59 extern HReg hregAMD64_R11 ( void );
60 extern HReg hregAMD64_R12 ( void );
61 extern HReg hregAMD64_R13 ( void );
62 extern HReg hregAMD64_R14 ( void );
63 extern HReg hregAMD64_R15 ( void );
65 extern HReg hregAMD64_FAKE0 ( void );
66 extern HReg hregAMD64_FAKE1 ( void );
67 extern HReg hregAMD64_FAKE2 ( void );
68 extern HReg hregAMD64_FAKE3 ( void );
69 extern HReg hregAMD64_FAKE4 ( void );
70 extern HReg hregAMD64_FAKE5 ( void );
72 extern HReg hregAMD64_XMM0 ( void );
73 extern HReg hregAMD64_XMM1 ( void );
74 extern HReg hregAMD64_XMM2 ( void );
75 extern HReg hregAMD64_XMM3 ( void );
76 extern HReg hregAMD64_XMM4 ( void );
77 extern HReg hregAMD64_XMM5 ( void );
78 extern HReg hregAMD64_XMM6 ( void );
79 extern HReg hregAMD64_XMM7 ( void );
80 extern HReg hregAMD64_XMM8 ( void );
81 extern HReg hregAMD64_XMM9 ( void );
82 extern HReg hregAMD64_XMM10 ( void );
83 extern HReg hregAMD64_XMM11 ( void );
84 extern HReg hregAMD64_XMM12 ( void );
85 extern HReg hregAMD64_XMM13 ( void );
86 extern HReg hregAMD64_XMM14 ( void );
87 extern HReg hregAMD64_XMM15 ( void );
140 HReg reg;
144 HReg base;
145 HReg index;
152 extern AMD64AMode* AMD64AMode_IR ( UInt, HReg );
153 extern AMD64AMode* AMD64AMode_IRRS ( UInt, HReg, HReg, Int );
178 HReg reg;
189 extern AMD64RMI* AMD64RMI_Reg ( HReg );
213 HReg reg;
221 extern AMD64RI* AMD64RI_Reg ( HReg );
240 HReg reg;
250 extern AMD64RM* AMD64RM_Reg ( HReg );
423 HReg dst;
428 HReg dst;
438 HReg dst;
442 HReg dst;
447 HReg dst;
452 HReg dst;
458 HReg dst;
477 //.. HReg src;
478 //.. HReg dst;
502 HReg dst;
507 HReg src;
508 HReg dst;
515 HReg dst;
520 HReg src;
526 HReg dst;
531 HReg src;
532 HReg dst;
599 HReg srcL; /* xmm */
600 HReg srcR; /* xmm */
601 HReg dst; /* int */
607 HReg src; /* i class */
608 HReg dst; /* v class */
614 HReg src; /* v class */
615 HReg dst; /* i class */
620 HReg src;
621 HReg dst;
627 //.. HReg dst;
632 HReg reg;
637 HReg reg;
642 HReg src;
643 HReg dst;
647 HReg src;
648 HReg dst;
652 HReg src;
653 HReg dst;
657 HReg src;
658 HReg dst;
662 HReg src;
663 HReg dst;
669 HReg src;
670 HReg dst;
674 HReg src;
675 HReg dst;
682 extern AMD64Instr* AMD64Instr_Imm64 ( ULong imm64, HReg dst );
683 extern AMD64Instr* AMD64Instr_Alu64R ( AMD64AluOp, AMD64RMI*, HReg );
685 extern AMD64Instr* AMD64Instr_Unary64 ( AMD64UnaryOp op, HReg dst );
686 extern AMD64Instr* AMD64Instr_Lea64 ( AMD64AMode* am, HReg dst );
687 extern AMD64Instr* AMD64Instr_Alu32R ( AMD64AluOp, AMD64RMI*, HReg );
688 extern AMD64Instr* AMD64Instr_Sh64 ( AMD64ShiftOp, UInt, HReg );
689 extern AMD64Instr* AMD64Instr_Test64 ( UInt imm32, HReg dst );
692 //.. extern AMD64Instr* AMD64Instr_Sh3232 ( AMD64ShiftOp, UInt amt, HReg src, HReg dst );
696 extern AMD64Instr* AMD64Instr_CMov64 ( AMD64CondCode, AMD64RM* src, HReg dst );
697 extern AMD64Instr* AMD64Instr_MovxLQ ( Bool syned, HReg src, HReg dst );
699 AMD64AMode* src, HReg dst );
700 extern AMD64Instr* AMD64Instr_Store ( UChar sz, HReg src, AMD64AMode* dst );
701 extern AMD64Instr* AMD64Instr_Set64 ( AMD64CondCode cond, HReg dst );
702 extern AMD64Instr* AMD64Instr_Bsfr64 ( Bool isFwds, HReg src, HReg dst );
713 //.. extern AMD64Instr* AMD64Instr_FpUnary ( AMD64FpOp op, HReg src, HReg dst );
714 //.. extern AMD64Instr* AMD64Instr_FpBinary ( AMD64FpOp op, HReg srcL, HReg srcR, HReg dst );
715 //.. extern AMD64Instr* AMD64Instr_FpLdSt ( Bool isLoad, UChar sz, HReg reg, AMD64AMode* );
716 //.. extern AMD64Instr* AMD64Instr_FpLdStI ( Bool isLoad, UChar sz, HReg reg, AMD64AMode* );
717 //.. extern AMD64Instr* AMD64Instr_Fp64to32 ( HReg src, HReg dst );
718 //.. extern AMD64Instr* AMD64Instr_FpCMov ( AMD64CondCode, HReg src, HReg dst );
721 extern AMD64Instr* AMD64Instr_SseUComIS ( Int sz, HReg srcL, HReg srcR, HReg dst );
722 extern AMD64Instr* AMD64Instr_SseSI2SF ( Int szS, Int szD, HReg src, HReg dst );
723 extern AMD64Instr* AMD64Instr_SseSF2SI ( Int szS, Int szD, HReg src, HReg dst );
724 extern AMD64Instr* AMD64Instr_SseSDSS ( Bool from64, HReg src, HReg dst );
726 //.. extern AMD64Instr* AMD64Instr_SseConst ( UShort con, HReg dst );
727 extern AMD64Instr* AMD64Instr_SseLdSt ( Bool isLoad, Int sz, HReg, AMD64AMode* );
728 extern AMD64Instr* AMD64Instr_SseLdzLO ( Int sz, HReg, AMD64AMode* );
729 extern AMD64Instr* AMD64Instr_Sse32Fx4 ( AMD64SseOp, HReg, HReg );
730 extern AMD64Instr* AMD64Instr_Sse32FLo ( AMD64SseOp, HReg, HReg );
731 extern AMD64Instr* AMD64Instr_Sse64Fx2 ( AMD64SseOp, HReg, HReg );
732 extern AMD64Instr* AMD64Instr_Sse64FLo ( AMD64SseOp, HReg, HReg );
733 extern AMD64Instr* AMD64Instr_SseReRg ( AMD64SseOp, HReg, HReg );
734 extern AMD64Instr* AMD64Instr_SseCMov ( AMD64CondCode, HReg src, HReg dst );
735 extern AMD64Instr* AMD64Instr_SseShuf ( Int order, HReg src, HReg dst );
744 extern Bool isMove_AMD64Instr ( AMD64Instr*, HReg*, HReg* );
751 HReg rreg, Int offset, Bool );
753 HReg rreg, Int offset, Bool );
755 extern void getAllocableRegs_AMD64 ( Int*, HReg** );