1*9880d681SAndroid Build Coastguard Worker; RUN: %lli -O0 %s 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Worker; This test checks that common symbols have been allocated addresses honouring 4*9880d681SAndroid Build Coastguard Worker; the alignment requirement. 5*9880d681SAndroid Build Coastguard Worker 6*9880d681SAndroid Build Coastguard Worker@CS1 = common global i32 0, align 16 7*9880d681SAndroid Build Coastguard Worker@CS2 = common global i8 0, align 1 8*9880d681SAndroid Build Coastguard Worker@CS3 = common global i32 0, align 16 9*9880d681SAndroid Build Coastguard Worker 10*9880d681SAndroid Build Coastguard Workerdefine i32 @main() nounwind { 11*9880d681SAndroid Build Coastguard Workerentry: 12*9880d681SAndroid Build Coastguard Worker %retval = alloca i32, align 4 13*9880d681SAndroid Build Coastguard Worker %ptr = alloca i32, align 4 14*9880d681SAndroid Build Coastguard Worker store i32 0, i32* %retval 15*9880d681SAndroid Build Coastguard Worker store i32 ptrtoint (i32* @CS3 to i32), i32* %ptr, align 4 16*9880d681SAndroid Build Coastguard Worker %0 = load i32, i32* %ptr, align 4 17*9880d681SAndroid Build Coastguard Worker %and = and i32 %0, 15 18*9880d681SAndroid Build Coastguard Worker %tobool = icmp ne i32 %and, 0 19*9880d681SAndroid Build Coastguard Worker br i1 %tobool, label %if.then, label %if.else 20*9880d681SAndroid Build Coastguard Worker 21*9880d681SAndroid Build Coastguard Workerif.then: ; preds = %entry 22*9880d681SAndroid Build Coastguard Worker store i32 1, i32* %retval 23*9880d681SAndroid Build Coastguard Worker br label %return 24*9880d681SAndroid Build Coastguard Worker 25*9880d681SAndroid Build Coastguard Workerif.else: ; preds = %entry 26*9880d681SAndroid Build Coastguard Worker store i32 0, i32* %retval 27*9880d681SAndroid Build Coastguard Worker br label %return 28*9880d681SAndroid Build Coastguard Worker 29*9880d681SAndroid Build Coastguard Workerreturn: ; preds = %if.else, %if.then 30*9880d681SAndroid Build Coastguard Worker %1 = load i32, i32* %retval 31*9880d681SAndroid Build Coastguard Worker ret i32 %1 32*9880d681SAndroid Build Coastguard Worker} 33