This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH, AArch64] Allow symbol+offset even if not being used for memory access


On 2012-08-31 07:49, Ian Bolton wrote:
> +(define_split
> +  [(set (match_operand:DI 0 "register_operand" "=r")
> +       (const:DI (plus:DI (match_operand:DI 1 "aarch64_valid_symref" "S")
> +                          (match_operand:DI 2 "const_int_operand" "i"))))]
> +  ""
> +  [(set (match_dup 0) (high:DI (const:DI (plus:DI (match_dup 1)
> +  		      	       		 	  (match_dup 2)))))
> +   (set (match_dup 0) (lo_sum:DI (match_dup 0)
> +   		      	         (const:DI (plus:DI (match_dup 1)
> +			       		            (match_dup 2)))))]
> +  ""
> +)

You ought not need this as a separate split, since (CONST ...) should
be handled exactly like (SYMBOL_REF).

Also note that constraints ("=r" etc) aren't used for splits.


r~


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]