Performs a code elimination by DCE (dead code elimination) more
effectively in optimizing a program by compiling. In an example
embodiment, a method invocation to be a processing target is determined
based on a state of a use of an object reference in a method invocation
in an execution program. The method invocation, which has been determined
to be a processing target, is inline-expanded. The instance variable of
an object in the inline-expanded method invocation is scalarized, and
dead code elimination is performed for the execution program, to which an
inline-expansion and a scalarization is performed.