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] |
On Nov 25, 2013, at 12:03 PM, David Edelsohn <dje.gcc@gmail.com> wrote: > Thanks for doing this conversion work. A few questions and comments: > > 1) Because rs6000 is one of the few ports that was completely > converted to wide-int instead of simply accommodating wide-int, what > is the compile-time performance impact of this conversion? Others are interested in time, so I will see about characterizing it for folks. > 2) non_logical_cint_operand changed const_double to const_wide_int, it > did not add the additional CODE. Mike explained why in a private > conversation, but the ChangeLog should be corrected. Fixed. > 3) altivec_resolve_overloaded_builtin, both hunks should be converted > the same way, using tree_fits_uhwi_p > > - && TREE_CODE (arg2) == INTEGER_CST > - && TREE_INT_CST_HIGH (arg2) == 0 > - && (TREE_INT_CST_LOW (arg2) == 0 || TREE_INT_CST_LOW (arg2) == 1)) > + && tree_fits_uhwi_p (arg2) > + && wi::ltu_p (arg2, 2)) Richard suggested for speed that we go the other direction. I agreed, what is what I'll include here for your consideration. > 4) easy_altivec_constant, the comment about 32 bit should be removed > because wide-int should remove the dependency on 32 bit vs 64 bit host > wide int. Fixed. > 5) rs6000_aggregate_candidate, is this change correct for Ada and > non-constant type size? No, it was an oversight, fixed. > The rest looks good. I'd like to see the revised patch before approving. Ok?
Attachment:
wide-int-rs6000-1.diffs.txt
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |