From d32638706af756958d2fcb48d6be57209bd69024 Mon Sep 17 00:00:00 2001 From: Nate Begeman Date: Thu, 18 Aug 2005 18:01:39 +0000 Subject: Improve ISD::Constant codegen. Now for int foo() { return -1; } we generate: _foo: li r3, -1 blr instead of _foo: lis r2, -1 ori r3, r2, 65535 blr llvm-svn: 22864 --- llvm/lib/Target/PowerPC/PPC32ISelPattern.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'llvm/lib/Target/PowerPC/PPC32ISelPattern.cpp') diff --git a/llvm/lib/Target/PowerPC/PPC32ISelPattern.cpp b/llvm/lib/Target/PowerPC/PPC32ISelPattern.cpp index 6eddcc48f1e..1ffa6dcb0e5 100644 --- a/llvm/lib/Target/PowerPC/PPC32ISelPattern.cpp +++ b/llvm/lib/Target/PowerPC/PPC32ISelPattern.cpp @@ -1736,7 +1736,7 @@ unsigned ISel::SelectExpr(SDOperand N, bool Recording) { assert(N.getValueType() == MVT::i32 && "Only i32 constants are legal on this target!"); int v = (int)cast(N)->getValue(); - unsigned Hi = Hi16(v); + unsigned Hi = HA16(v); unsigned Lo = Lo16(v); if (Hi && Lo) { Tmp1 = MakeIntReg(); -- cgit v1.2.3