[all-commits] [llvm/llvm-project] 8b26c0: [LoongArch] Align stack objects passed to memory i...
hev via All-commits
all-commits at lists.llvm.org
Thu Aug 1 20:28:25 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 8b26c02caaa002edc2d70af9e6a8024c4b1343cf
https://github.com/llvm/llvm-project/commit/8b26c02caaa002edc2d70af9e6a8024c4b1343cf
Author: hev <wangrui at loongson.cn>
Date: 2024-08-02 (Fri, 02 Aug 2024)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/test/CodeGen/LoongArch/unaligned-memcpy-inline.ll
Log Message:
-----------
[LoongArch] Align stack objects passed to memory intrinsics (#101309)
Memcpy, and other memory intrinsics, typically try to use wider
load/store if the source and destination addresses are aligned. In
CodeGenPrepare, look for calls to memory intrinsics and, if the object
is on the stack, align it to 4-byte (32-bit) or 8-byte (64-bit)
boundaries if it is large enough that we expect memcpy to use wider
load/store instructions to copy it.
Fixes #101295
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list