From: Jan Hubicka Date: Fri, 23 Jan 2004 22:05:19 +0000 (+0100) Subject: emit-rtl.c (change_address_1): Do not re-generate the RTX if nothing change. X-Git-Tag: releases/gcc-4.0.0~10782 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a74ff877641c745eda294f04564a7ac7fc9b9e9d;p=thirdparty%2Fgcc.git emit-rtl.c (change_address_1): Do not re-generate the RTX if nothing change. * emit-rtl.c (change_address_1): Do not re-generate the RTX if nothing change. From-SVN: r76457 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ed7405890b6a..2a4f30adf69b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,8 @@ 2004-01-23 Jan Hubicka + * emit-rtl.c (change_address_1): Do not re-generate the RTX if nothing + change. + * alloc-pool.c (align_four): Kill. (create_alloc_pool): Align size to eight. (free_alloc_pool, free_pool): Invalidate deallocated data. diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c index cdb0c2a3c316..f576e76ca758 100644 --- a/gcc/emit-rtl.c +++ b/gcc/emit-rtl.c @@ -1840,6 +1840,9 @@ change_address_1 (rtx memref, enum machine_mode mode, rtx addr, int validate) mode = GET_MODE (memref); if (addr == 0) addr = XEXP (memref, 0); + if (mode == GET_MODE (memref) && addr == XEXP (memref, 0) + && (!validate || memory_address_p (mode, addr))) + return memref; if (validate) {