aboutsummaryrefslogtreecommitdiff
path: root/gcc/objc
diff options
context:
space:
mode:
authorClaudiu Zissulescu <claziss@synopsys.com>2021-06-09 12:12:57 +0300
committerClaudiu Zissulescu <claziss@synopsys.com>2021-06-09 12:12:57 +0300
commitc0ba7a8af5366c37241f20e8be41e362f7260389 (patch)
tree6dff994f3ed1329cab83f5b4a77c8cfbb0e2de97 /gcc/objc
parentd4d38135b3137f1d3148138340e67bdcd7ea8216 (diff)
downloadgcc-c0ba7a8af5366c37241f20e8be41e362f7260389.zip
gcc-c0ba7a8af5366c37241f20e8be41e362f7260389.tar.gz
gcc-c0ba7a8af5366c37241f20e8be41e362f7260389.tar.bz2
arc: Update 64bit move split patterns.
ARCv2HS can use a limited number of instructions to implement 64bit moves. The VADD2 is used as a 64bit move, the LDD/STD are 64 bit loads and stores. All those instructions are not baseline, hence we need to provide alternatives when they are not available or cannot be generate due to instruction restriction. This patch is cleaning up those move patterns, and updates splits instruction lengths. gcc/ 2021-06-09 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc-protos.h (arc_split_move_p): New prototype. * config/arc/arc.c (arc_split_move_p): New function. (arc_split_move): Clean up. * config/arc/arc.md (movdi_insn): Clean up, use arc_split_move_p. (movdf_insn): Likewise. * config/arc/simdext.md (mov<VWH>_insn): Likewise. Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
Diffstat (limited to 'gcc/objc')
0 files changed, 0 insertions, 0 deletions