This should always be signed chars, so use int8_t. This fixes a miscompile when
[llvm/stm8.git] / test / CodeGen / X86 / x86-64-malloc.ll
blob4aa0ec3dc9f7b5ff9555f85457fe8191cd92716c
1 ; RUN: llc < %s -mtriple=x86_64-linux | FileCheck %s
2 ; RUN: llc < %s -mtriple=x86_64-win32 | FileCheck %s
3 ; CHECK: shll $3, {{%edi|%ecx}}
4 ; PR3829
5 ; The generated code should multiply by 3 (sizeof i8*) as an i32,
6 ; not as an i64!
8 define i8** @test(i32 %sz) {
9         %sub = add i32 %sz, 536870911           ; <i32> [#uses=1]
10         %call = malloc i8*, i32 %sub            ; <i8**> [#uses=1]
11         ret i8** %call