; RUN: llc < %s -march=x86
; PR3317

        %ArraySInt16 = type { %JavaObject, i8*, [0 x i16] }
        %ArraySInt8 = type { %JavaObject, i8*, [0 x i8] }
        %Attribut = type { %ArraySInt16*, i32, i32 }
        %CacheNode = type { i8*, %JavaCommonClass*, %CacheNode*, %Enveloppe* }
        %Enveloppe = type { %CacheNode*, %ArraySInt16*, %ArraySInt16*, i8, %JavaClass*, %CacheNode }
        %JavaArray = type { %JavaObject, i8* }
        %JavaClass = type { %JavaCommonClass, i32, %VT*, [1 x %TaskClassMirror], i8*, %JavaField*, i16, %JavaField*, i16, %JavaMethod*, i16, %JavaMethod*, i16, i8*, %ArraySInt8*, i8*, %Attribut*, i16, %JavaClass**, i16, %JavaClass*, i16, i8, i32, i32, i8*, void (i8*)* }
        %JavaCommonClass = type { %JavaCommonClass**, i32, [1 x %JavaObject*], i16, %JavaClass**, i16, %ArraySInt16*, %JavaClass*, i8* }
        %JavaField = type { i8*, i16, %ArraySInt16*, %ArraySInt16*, %Attribut*, i16, %JavaClass*, i32, i16, i8* }
        %JavaMethod = type { i8*, i16, %Attribut*, i16, %Enveloppe*, i16, %JavaClass*, %ArraySInt16*, %ArraySInt16*, i8, i8*, i32, i8* }
        %JavaObject = type { %VT*, %JavaCommonClass*, i8* }
        %TaskClassMirror = type { i32, i8* }
        %UTF8 = type { %JavaObject, i8*, [0 x i16] }
        %VT = type [0 x i32 (...)*]

declare void @jnjvmNullPointerException()

define i32 @JnJVM_java_rmi_activation_ActivationGroupID_hashCode__(%JavaObject* nocapture) nounwind {
start:
        %1 = getelementptr %JavaObject* %0, i64 1, i32 1                ; <%JavaCommonClass**> [#uses=1]
        %2 = load %JavaCommonClass** %1         ; <%JavaCommonClass*> [#uses=4]
        %3 = icmp eq %JavaCommonClass* %2, null         ; <i1> [#uses=1]
        br i1 %3, label %verifyNullExit1, label %verifyNullCont2

verifyNullExit1:                ; preds = %start
        tail call void @jnjvmNullPointerException()
        unreachable

verifyNullCont2:                ; preds = %start
        %4 = bitcast %JavaCommonClass* %2 to { %JavaObject, i16, i32, i64 }*            ; <{ %JavaObject, i16, i32, i64 }*> [#uses=1]
        %5 = getelementptr { %JavaObject, i16, i32, i64 }* %4, i64 0, i32 2             ; <i32*> [#uses=1]
        %6 = load i32* %5               ; <i32> [#uses=1]
        %7 = getelementptr %JavaCommonClass* %2, i64 0, i32 4           ; <%JavaClass***> [#uses=1]
        %8 = bitcast %JavaClass*** %7 to i64*           ; <i64*> [#uses=1]
        %9 = load i64* %8               ; <i64> [#uses=1]
        %10 = trunc i64 %9 to i32               ; <i32> [#uses=1]
        %11 = getelementptr %JavaCommonClass* %2, i64 0, i32 3          ; <i16*> [#uses=1]
        %12 = load i16* %11             ; <i16> [#uses=1]
        %13 = sext i16 %12 to i32               ; <i32> [#uses=1]
        %14 = xor i32 %10, %6           ; <i32> [#uses=1]
        %15 = xor i32 %14, %13          ; <i32> [#uses=1]
        ret i32 %15 
}
