revised PATCH: CALL_EXPR representation changes, part 7/9 (Java front end)

Ian Lance Taylor iant@google.com
Thu Feb 15 22:20:00 GMT 2007


Sandra Loosemore <sandra@codesourcery.com> writes:

> 2007-02-14  Sandra Loosemore  <sandra@codesourcery.com>
> 	    Brooks Moses  <brooks.moses@codesourcery.com>
> 	    Lee Millward  <lee.millward@codesourcery.com>
> 
> 	* java-tree.h (BUILD_MONITOR_ENTER): Use build_call_nary instead
> 	of build3.
> 	(BUILD_MONITOR_EXIT): Likewise.
> 
> 	* java-gimplify.c (java_gimplify_component_ref): Use build_call_expr.
> 	(java_gimplify_modify_expr): Likewise.
> 
> 	* class.c (cache_this_class_ref): Use build_call_expr.
> 	(build_static_field_ref): Likewise.
> 	(emit_indirect_register_classes): Likewise.
> 	(emit_register_classes): Likewise.
> 
> 	* resource.c (write_resource_constructor): Use build_call_expr.
> 
> 	* builtins.c (builtin_creator_function): Change interpretation of
> 	the second parameter to be the whole CALL_EXPR instead of the arglist.
> 	(max_builtin): Tweak parameter list.  Use new CALL_EXPR accessors.
> 	(min_builtin): Likewise.
> 	(abs_builtin): Likewise.
> 	(java_build_function_call_expr): Likewise.
> 	(convert_real): Likewise.
> 	(UNMARSHAL3): Likewise.
> 	(UNMARSHAL4): Likewise.
> 	(UNMARSHAL5): Likewise.
> 	(build_arglist_for_builtin): Delete.  Fix callers to use
> 	build_call_expr instead.
> 	(putObject_builtin): Tweak parameter list.  Use new CALL_EXPR
> 	accessors.
> 	(compareAndSwapInt_builtin): Likewise.
> 	(compareAndSwapLong_builtin): Likewise.
> 	(compareAndSwapObject_builtin): Likewise.
> 	(putVolatile_builtin): Likewise.
> 	(getVolatile_builtin): Likewise.
> 	(VMSupportsCS8_builtin): Likewise.
> 	(check_for_builtin): Pass entire CALL_EXPR to builtin expander
> 	instead of arglist.
> 
> 	* expr.c (build_java_athrow): Use build_call_nary instead of build3.
> 	(build_java_throw_out_of_bounds_exception): Likewise.
> 	(java_check_reference): Likewise.
> 	(build_java_arraystore_check): Likewise.
> 	(build_newarray): Likewise.
> 	(build_anewarray): Likewise.
> 	(expand_java_multinewarray): Use build_call_list instead of build3.
> 	(build_java_monitor): Use build_call_nary instead of build3.
> 	(java_create_object): Likewise.
> 	(expand_java_NEW): Likewise.
> 	(build_instanceof): Likewise.
> 	(expand_java_CHECKCAST): Likewise.
> 	(build_java_soft_divmod): Likewise.
> 	(build_java_binop): Likewise.
> 	(build_field_ref): Likewise.
> 	(build_class_init): Likewise.
> 	(rewrite_arglist_getcaller): Use build_call_expr.
> 	(build_invokeinterface):  Use build_call_nary instead of build3.
> 	(expand_invoke): Use build_call_list instead of build3.
> 	(build_jni_stub): Use build_call_nary, build_call_list, or
> 	build_call_expr instead	of build3.
> 	(expand_java_field_op): Use build_call_expr instead of build3.
> 	(force_evaluation_order): Use new CALL_EXPR accessors.
> 
> 	* lang.c (java_get_callee_fndecl): Use new CALL_EXPR accessors.


I can't technically approve this patch, but I looked through it and it
looks OK to me.

Ian



More information about the Gcc-patches mailing list