pushfirst!(ir, IRTools.xcall(Base, :println, "hello, world")) works.
Though IRTools.xcall(Base, :println, "hello, world") returns an Expr whose representation is :(Base.println("hello, world")), it is not identified with :(Base.println("hello, world")):
julia> a=IRTools.xcall(Base, :println, "Hi")
:(Base.println("Hi"))
julia> b=:(Base.println("Hi"))
:(Base.println("Hi"))
julia> a.args[1], a.args[1] |> typeof
(:(Base.println), GlobalRef)
julia> b.args[1], b.args[1] |> typeof
(:(Base.println), Expr)