head 1.1; branch 1.1.1; access ; symbols gcc-14-3-0:1.1.1.1 FSF:1.1.1; locks ; strict; comment @# @; 1.1 date 2025.09.13.23.45.57; author mrg; state Exp; branches 1.1.1.1; next ; commitid KwhwN4krNWa6XBaG; 1.1.1.1 date 2025.09.13.23.45.57; author mrg; state Exp; branches ; next ; commitid KwhwN4krNWa6XBaG; desc @@ 1.1 log @Initial revision @ text @(define_insn_and_split "*movsi_aarch64" [(set (match_operand:SI 0 "nonimmediate_operand") (match_operand:SI 1 "aarch64_mov_operand"))] "(register_operand (operands[0], SImode) || aarch64_reg_or_zero (operands[1], SImode))" {@@ [ cons: =0 , 1 ; attrs: type , arch , length ] [ r , r ; mov_reg , * , 4 ] mov\t%w0, %w1 [ k , r ; mov_reg , * , 4 ] mov\t%w0, %w1 [ r , k ; mov_reg , * , 4 ] mov\t%w0, %w1 [ r , M ; mov_imm , * , 4 ] mov\t%w0, %1 [ r , n ; mov_imm , * , * ] # [ r , Usv ; mov_imm , sve , 4 ] << aarch64_output_sve_cnt_immediate ("cnt", "%x0", operands[1]); [ r , m ; load_4 , * , 4 ] ldr\t%w0, %1 [ w , m ; load_4 , fp , 4 ] ldr\t%s0, %1 [ m , rZ ; store_4 , * , 4 ] str\t%w1, %0 [ m , w ; store_4 , fp , 4 ] str\t%s1, %0 [ r , Usw ; load_4 , * , 8 ] adrp\t%x0, %A1\;ldr\t%w0, [%x0, %L1] [ r , Usa ; adr , * , 4 ] adr\t%x0, %c1 [ r , Ush ; adr , * , 4 ] adrp\t%x0, %A1 [ w , rZ ; f_mcr , fp , 4 ] fmov\t%s0, %w1 [ r , w ; f_mrc , fp , 4 ] fmov\t%w0, %s1 [ w , w ; fmov , fp , 4 ] fmov\t%s0, %s1 [ w , Ds ; neon_move , simd , 4 ] << aarch64_output_scalar_simd_mov_immediate (operands[1], SImode); } "CONST_INT_P (operands[1]) && !aarch64_move_imm (INTVAL (operands[1]), SImode) && REG_P (operands[0]) && GP_REGNUM_P (REGNO (operands[0]))" [(const_int 0)] "{ aarch64_expand_mov_immediate (operands[0], operands[1]); DONE; }" ) @ 1.1.1.1 log @initial import of GCC 14.3.0. major changes in GCC 13: - improved sanitizer - zstd debug info compression - LTO improvements - SARIF based diagnostic support - new warnings: -Wxor-used-as-pow, -Wenum-int-mismatch, -Wself-move, -Wdangling-reference - many new -Wanalyzer* specific warnings - enhanced warnings: -Wpessimizing-move, -Wredundant-move - new attributes to mark file descriptors, c++23 "assume" - several C23 features added - several C++23 features added - many new features for Arm, x86, RISC-V major changes in GCC 14: - more strict C99 or newer support - ia64* marked deprecated (but seemingly still in GCC 15.) - several new hardening features - support for "hardbool", which can have user supplied values of true/false - explicit support for stack scrubbing upon function exit - better auto-vectorisation support - added clang-compatible __has_feature and __has_extension - more C23, including -std=c23 - several C++26 features added - better diagnostics in C++ templates - new warnings: -Wnrvo, Welaborated-enum-base - many new features for Arm, x86, RISC-V - possible ABI breaking change for SPARC64 and small structures with arrays of floats. @ text @@