blob: 09acb3c681d537046550791bf3c7b4e3cec00a38 [file] [log] [blame]
; pointer compression tries to turn the llvm.memcpy into llvm.memcpy_pc
; this is of course bad. It should materialize the pointers.
target endian = little
target pointersize = 64
target triple = "alphaev6-unknown-linux-gnu"
deplibs = [ "c", "crtend" ]
%struct.spec_fd_t = type { int, int, int, ubyte* }
%spec_fd = external global [3 x %struct.spec_fd_t] ; <[3 x %struct.spec_fd_t]*> [#uses=2]
implementation ; Functions:
declare void %llvm.memcpy(sbyte*, sbyte*, ulong, uint)
void %main() {
entry:
br bool false, label %no_exit.0.i161, label %endif.0
endif.0: ; preds = %entry
ret void
no_exit.0.i161: ; preds = %entry
%tmp.25.i = getelementptr [3 x %struct.spec_fd_t]* %spec_fd, long 0, int 0, uint 3 ; <ubyte**> [#uses=1]
%tmp.26.i = malloc ubyte, uint 0 ; <ubyte*> [#uses=1]
store ubyte* %tmp.26.i, ubyte** %tmp.25.i
br bool false, label %no_exit.1.i, label %then.4
no_exit.1.i: ; preds = %no_exit.0.i161
%tmp.103.i = load ubyte** getelementptr ([3 x %struct.spec_fd_t]* %spec_fd, long 0, int 0, uint 3) ; <ubyte*> [#uses=1]
%tmp.118.i = cast ubyte* %tmp.103.i to sbyte* ; <sbyte*> [#uses=1]
tail call void %llvm.memcpy( sbyte* null, sbyte* %tmp.118.i, ulong 0, uint 1 )
ret void
then.4: ; preds = %no_exit.0.i161
ret void
}