Lines 72-78
Link Here
|
72 |
|
72 |
|
73 |
|
73 |
|
74 |
// x86-64 va_start lowering magic. |
74 |
// x86-64 va_start lowering magic. |
75 |
let usesCustomInserter = 1 in { |
75 |
let usesCustomInserter = 1, Defs = [EFLAGS] in { |
76 |
def VASTART_SAVE_XMM_REGS : I<0, Pseudo, |
76 |
def VASTART_SAVE_XMM_REGS : I<0, Pseudo, |
77 |
(outs), |
77 |
(outs), |
78 |
(ins GR8:$al, |
78 |
(ins GR8:$al, |
Lines 81-87
Link Here
|
81 |
"#VASTART_SAVE_XMM_REGS $al, $regsavefi, $offset", |
81 |
"#VASTART_SAVE_XMM_REGS $al, $regsavefi, $offset", |
82 |
[(X86vastart_save_xmm_regs GR8:$al, |
82 |
[(X86vastart_save_xmm_regs GR8:$al, |
83 |
imm:$regsavefi, |
83 |
imm:$regsavefi, |
84 |
imm:$offset)]>; |
84 |
imm:$offset), |
|
|
85 |
(implicit EFLAGS)]>; |
85 |
|
86 |
|
86 |
// The VAARG_64 pseudo-instruction takes the address of the va_list, |
87 |
// The VAARG_64 pseudo-instruction takes the address of the va_list, |
87 |
// and places the address of the next argument into a register. |
88 |
// and places the address of the next argument into a register. |