diff options
author | Chris Lattner <sabre@nondot.org> | 2007-02-25 23:10:46 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2007-02-25 23:10:46 +0000 |
commit | 8924332e222f5ac82ef04f2b1c95ee6b2c6c8315 (patch) | |
tree | cd1fba3500439dffec3a656877d859b028dcec21 /llvm/lib/Support/APInt.cpp | |
parent | c864f6a786ccfa5ed8da6807609c6ff8eae4a598 (diff) | |
download | bcm5719-llvm-8924332e222f5ac82ef04f2b1c95ee6b2c6c8315.tar.gz bcm5719-llvm-8924332e222f5ac82ef04f2b1c95ee6b2c6c8315.zip |
Fix an X86-64 abi bug. We now compile:
void foo(short);
void bar(unsigned short A) {
foo(A);
}
into:
_bar:
subq $8, %rsp
movswl %di, %edi
call _foo
addq $8, %rsp
ret
instead of:
_bar:
subq $8, %rsp
call _foo
addq $8, %rsp
ret
Testcase here: test/CodeGen/X86/x86-64-shortint.ll
llvm-svn: 34615
Diffstat (limited to 'llvm/lib/Support/APInt.cpp')
0 files changed, 0 insertions, 0 deletions