The recent longlong.h patch http://gcc.gnu.org/ml/gcc-patches/2014-01/msg00286.html
reminded me that the other common patterns really ought to be supported somehow. We had patterns defining ADDS, ADC, and UMULH, but we didn't have the proper expanders in place to make use of them. The final longlong.h patch has nothing that's really aarch64 specific, but I chickened out in making the generic patterns use builtin double word arithmetic. Perhaps some define set in the cpu-specific portion of the file ought to select this from the final common portion, but that sort of thing begs the question of large-scale cleanup. r~ Richard Henderson (6): aarch64: Add addti3 and subti3 patterns aarch64: Add mulditi3 and umulditi3 patterns aarch64: Add multi3 pattern soft-fp: Commonize creation of TImode types soft-fp: Define UDWtype for longlong.h aarch64: Define add_ssaaaa, sub_ddmmss, umul_ppmm gcc/config/aarch64/aarch64.md | 89 ++++++++++++++++++++++++++++++++++-- include/longlong.h | 28 +++++++++--- libgcc/config/aarch64/sfp-machine.h | 4 -- libgcc/config/i386/64/sfp-machine.h | 5 -- libgcc/config/ia64/sfp-machine.h | 5 -- libgcc/config/tilegx/sfp-machine32.h | 5 -- libgcc/config/tilegx/sfp-machine64.h | 5 -- libgcc/soft-fp/soft-fp.h | 14 ++++++ 8 files changed, 120 insertions(+), 35 deletions(-) -- 1.8.4.2