Alexandre Isoard via llvm-dev
2018-Jan-25 02:47 UTC
[llvm-dev] [PATCH] D41675: Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1)
Thanks, that worked like a charm except for the following: llvm generate: call void @llvm.memcpy.p3i8.p1i8.i64(i8 addrspace(3)* align 1 bitcast ([512 x float] addrspace(3)* @a_scratchpad to i8 addrspace(3)*), i8 addrspace(1)* align 1 %0, i64 2048, i1 false) And we expected: call void @llvm.memcpy.p3i8.p1i8.i64(i8 addrspace(3)* bitcast ([512 x float] addrspace(3)* [[SPM0]] to i8 addrspace(3)*), i8 addrspace(1)* [[APTR]], i64 2048, i1 false) Notice the presence of "align 1". I'm not sure which side is correct, isn't it equivalent (that is, this is the natural ABI alignment of that type)? Here is my datalayout: target datalayout "e-m:e-i64:64-n8:16:32:64-S128-v16:16-v24:32-v32:32-v48:64-v96:128-v192:256-v256:256-v512:512-v1024:1024" 2018-01-23 20:14 GMT-08:00 Daniel Neilson <dneilson at azul.com>:> Hi Alexandre, > The script uses extended-sed syntax, so you need to run sed with the -E > option. > > For example, when preparing the patch I created a file ( script.sed ) > containing all of the lines that I copied into the commit message. Then, I > ran this bash one-liner from the test directory: > for f in $(find . -name '*.ll'); do sed -E -i ‘.sedbak' -f script.sed $f; > done > > When I was happy with the results, then: find . -name ‘*.sedbak’ --exec > rm -f {} \; > > Please let me know if that doesn’t work for you. > > -Daniel > > On Jan 23, 2018, at 8:33 PM, Alexandre Isoard via llvm-dev < > llvm-dev at lists.llvm.org> wrote: > > Hello, > > Is there a script to update those test cases? I see mention of a sed > script in the commit message but when I try it (see attached) on sed I get > the following error: > > sed: file script line 2: invalid reference \3 on `s' command's RHS > > Did I lose something in a copy-paste? Is it not really a sed script? How > do I run it? > > > On Fri, Jan 19, 2018 at 9:15 AM, Daniel Neilson via Phabricator via > llvm-commits <llvm-commits at lists.llvm.org> wrote: > >> This revision was automatically updated to reflect the committed changes. >> Closed by commit rL322965: Remove alignment argument from >> memcpy/memmove/memset in favour of alignment… (authored by dneilson, >> committed by ). >> >> Repository: >> rL LLVM >> >> https://reviews.llvm.org/D41675 >> >> Files: >> llvm/trunk/docs/LangRef.rst >> llvm/trunk/include/llvm/IR/IntrinsicInst.h >> llvm/trunk/include/llvm/IR/Intrinsics.td >> llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp >> llvm/trunk/lib/IR/AutoUpgrade.cpp >> llvm/trunk/lib/IR/IRBuilder.cpp >> llvm/trunk/lib/IR/Verifier.cpp >> llvm/trunk/lib/Target/AArch64/AArch64FastISel.cpp >> llvm/trunk/lib/Target/ARM/ARMFastISel.cpp >> llvm/trunk/lib/Target/Mips/MipsFastISel.cpp >> llvm/trunk/lib/Target/X86/X86FastISel.cpp >> llvm/trunk/lib/Transforms/InstCombine/InstCombineCalls.cpp >> llvm/trunk/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp >> llvm/trunk/test/Analysis/AliasSet/memtransfer.ll >> llvm/trunk/test/Analysis/BasicAA/assume.ll >> llvm/trunk/test/Analysis/BasicAA/cs-cs.ll >> llvm/trunk/test/Analysis/BasicAA/gep-and-alias.ll >> llvm/trunk/test/Analysis/BasicAA/getmodrefinfo-cs-cs.ll >> llvm/trunk/test/Analysis/BasicAA/guards.ll >> llvm/trunk/test/Analysis/BasicAA/modref.ll >> llvm/trunk/test/Analysis/CallGraph/no-intrinsics.ll >> llvm/trunk/test/Analysis/ConstantFolding/gep-constanfolding-error.ll >> llvm/trunk/test/Analysis/DependenceAnalysis/Preliminary.ll >> llvm/trunk/test/Analysis/GlobalsModRef/memset-escape.ll >> llvm/trunk/test/Analysis/GlobalsModRef/no-escape.ll >> llvm/trunk/test/Analysis/GlobalsModRef/pr12351.ll >> llvm/trunk/test/Analysis/GlobalsModRef/volatile-instrs.ll >> llvm/trunk/test/Analysis/Lint/noalias-byval.ll >> llvm/trunk/test/Analysis/MemorySSA/basicaa-memcpy.ll >> llvm/trunk/test/Analysis/ScalarEvolution/avoid-smax-1.ll >> llvm/trunk/test/Analysis/ScalarEvolution/trip-count.ll >> llvm/trunk/test/Analysis/ScalarEvolution/trip-count3.ll >> llvm/trunk/test/Analysis/TypeBasedAliasAnalysis/functionattrs.ll >> llvm/trunk/test/Analysis/TypeBasedAliasAnalysis/memcpyopt.ll >> llvm/trunk/test/Bitcode/standardCIntrinsic.3.2.ll >> llvm/trunk/test/Bitcode/upgrade-memory-intrinsics.ll >> llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll >> llvm/trunk/test/CodeGen/AArch64/PBQP-csr.ll >> llvm/trunk/test/CodeGen/AArch64/aarch64-DAGCombine-findBette >> rNeighborChains-crash.ll >> llvm/trunk/test/CodeGen/AArch64/arm64-2012-05-07-MemcpyAlignBug.ll >> llvm/trunk/test/CodeGen/AArch64/arm64-abi-varargs.ll >> llvm/trunk/test/CodeGen/AArch64/arm64-abi_align.ll >> llvm/trunk/test/CodeGen/AArch64/arm64-fast-isel-intrinsic.ll >> llvm/trunk/test/CodeGen/AArch64/arm64-memcpy-inline.ll >> llvm/trunk/test/CodeGen/AArch64/arm64-memset-inline.ll >> llvm/trunk/test/CodeGen/AArch64/arm64-memset-to-bzero.ll >> llvm/trunk/test/CodeGen/AArch64/arm64-misaligned-memcpy-inline.ll >> llvm/trunk/test/CodeGen/AArch64/arm64-misched-basic-A53.ll >> llvm/trunk/test/CodeGen/AArch64/arm64-misched-basic-A57.ll >> llvm/trunk/test/CodeGen/AArch64/arm64-stur.ll >> llvm/trunk/test/CodeGen/AArch64/arm64-virtual_base.ll >> llvm/trunk/test/CodeGen/AArch64/fast-isel-memcpy.ll >> llvm/trunk/test/CodeGen/AArch64/func-argpassing.ll >> llvm/trunk/test/CodeGen/AArch64/ldp-stp-scaled-unscaled-pairs.ll >> llvm/trunk/test/CodeGen/AArch64/ldst-paired-aliasing.ll >> llvm/trunk/test/CodeGen/AArch64/ldst-zero.ll >> llvm/trunk/test/CodeGen/AArch64/machine-combiner-madd.ll >> llvm/trunk/test/CodeGen/AArch64/memcpy-f128.ll >> llvm/trunk/test/CodeGen/AArch64/merge-store-dependency.ll >> llvm/trunk/test/CodeGen/AArch64/mergestores_noimplicitfloat.ll >> llvm/trunk/test/CodeGen/AArch64/misched-stp.ll >> llvm/trunk/test/CodeGen/AArch64/pr33172.ll >> llvm/trunk/test/CodeGen/AArch64/tailcall-mem-intrinsics.ll >> llvm/trunk/test/CodeGen/AArch64/tailcall-string-rvo.ll >> llvm/trunk/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll >> llvm/trunk/test/CodeGen/AMDGPU/lds-alignment.ll >> llvm/trunk/test/CodeGen/AMDGPU/llvm.memcpy.ll >> llvm/trunk/test/CodeGen/AMDGPU/lower-mem-intrinsics.ll >> llvm/trunk/test/CodeGen/AMDGPU/promote-alloca-mem-intrinsics.ll >> llvm/trunk/test/CodeGen/AMDGPU/stack-size-overflow.ll >> llvm/trunk/test/CodeGen/ARM/2009-03-07-SpillerBug.ll >> llvm/trunk/test/CodeGen/ARM/2011-03-10-DAGCombineCrash.ll >> llvm/trunk/test/CodeGen/ARM/2011-10-26-memset-inline.ll >> llvm/trunk/test/CodeGen/ARM/2011-10-26-memset-with-neon.ll >> llvm/trunk/test/CodeGen/ARM/2012-04-24-SplitEHCriticalEdge.ll >> llvm/trunk/test/CodeGen/ARM/Windows/memset.ll >> llvm/trunk/test/CodeGen/ARM/Windows/no-aeabi.ll >> llvm/trunk/test/CodeGen/ARM/arm-eabi.ll >> llvm/trunk/test/CodeGen/ARM/constantpool-promote-ldrh.ll >> llvm/trunk/test/CodeGen/ARM/constantpool-promote.ll >> llvm/trunk/test/CodeGen/ARM/crash-O0.ll >> llvm/trunk/test/CodeGen/ARM/debug-info-blocks.ll >> llvm/trunk/test/CodeGen/ARM/dyn-stackalloc.ll >> llvm/trunk/test/CodeGen/ARM/fast-isel-intrinsic.ll >> llvm/trunk/test/CodeGen/ARM/interval-update-remat.ll >> llvm/trunk/test/CodeGen/ARM/ldm-stm-base-materialization.ll >> llvm/trunk/test/CodeGen/ARM/machine-cse-cmp.ll >> llvm/trunk/test/CodeGen/ARM/memcpy-inline.ll >> llvm/trunk/test/CodeGen/ARM/memcpy-ldm-stm.ll >> llvm/trunk/test/CodeGen/ARM/memcpy-no-inline.ll >> llvm/trunk/test/CodeGen/ARM/memfunc.ll >> llvm/trunk/test/CodeGen/ARM/memset-inline.ll >> llvm/trunk/test/CodeGen/ARM/stack-protector-bmovpcb_call.ll >> llvm/trunk/test/CodeGen/ARM/struct-byval-frame-index.ll >> llvm/trunk/test/CodeGen/ARM/tailcall-mem-intrinsics.ll >> llvm/trunk/test/CodeGen/AVR/std-ldd-immediate-overflow.ll >> llvm/trunk/test/CodeGen/BPF/byval.ll >> llvm/trunk/test/CodeGen/BPF/ex1.ll >> llvm/trunk/test/CodeGen/BPF/fi_ri.ll >> llvm/trunk/test/CodeGen/BPF/reloc.ll >> llvm/trunk/test/CodeGen/BPF/rodata_1.ll >> llvm/trunk/test/CodeGen/BPF/rodata_2.ll >> llvm/trunk/test/CodeGen/BPF/rodata_3.ll >> llvm/trunk/test/CodeGen/BPF/rodata_4.ll >> llvm/trunk/test/CodeGen/BPF/sanity.ll >> llvm/trunk/test/CodeGen/BPF/undef.ll >> llvm/trunk/test/CodeGen/BPF/warn-call.ll >> llvm/trunk/test/CodeGen/Generic/ForceStackAlign.ll >> llvm/trunk/test/CodeGen/Generic/invalid-memcpy.ll >> llvm/trunk/test/CodeGen/Hexagon/adjust-latency-stackST.ll >> llvm/trunk/test/CodeGen/Hexagon/branchfolder-keep-impdef.ll >> llvm/trunk/test/CodeGen/Hexagon/early-if-conversion-bug1.ll >> llvm/trunk/test/CodeGen/Hexagon/mem-fi-add.ll >> llvm/trunk/test/CodeGen/Hexagon/memcpy-likely-aligned.ll >> llvm/trunk/test/CodeGen/Hexagon/rdf-filter-defs.ll >> llvm/trunk/test/CodeGen/Hexagon/store-imm-stack-object.ll >> llvm/trunk/test/CodeGen/Hexagon/tail-call-mem-intrinsics.ll >> llvm/trunk/test/CodeGen/MSP430/memset.ll >> llvm/trunk/test/CodeGen/Mips/2012-12-12-ExpandMemcpy.ll >> llvm/trunk/test/CodeGen/Mips/Fast-ISel/memtest1.ll >> llvm/trunk/test/CodeGen/Mips/biggot.ll >> llvm/trunk/test/CodeGen/Mips/cconv/arguments-small-structure >> s-bigger-than-32bits.ll >> llvm/trunk/test/CodeGen/Mips/cconv/arguments-varargs-small-s >> tructs-byte.ll >> llvm/trunk/test/CodeGen/Mips/cconv/arguments-varargs-small-s >> tructs-combinations.ll >> llvm/trunk/test/CodeGen/Mips/cconv/return-struct.ll >> llvm/trunk/test/CodeGen/Mips/largeimmprinting.ll >> llvm/trunk/test/CodeGen/Mips/long-calls.ll >> llvm/trunk/test/CodeGen/Mips/memcpy.ll >> llvm/trunk/test/CodeGen/Mips/pr33978.ll >> llvm/trunk/test/CodeGen/Mips/tailcall/tailcall.ll >> llvm/trunk/test/CodeGen/NVPTX/lower-aggr-copies.ll >> llvm/trunk/test/CodeGen/PowerPC/2011-12-05-NoSpillDupCR.ll >> llvm/trunk/test/CodeGen/PowerPC/2011-12-06-SpillAndRestoreCR.ll >> llvm/trunk/test/CodeGen/PowerPC/MMO-flags-assertion.ll >> llvm/trunk/test/CodeGen/PowerPC/aantidep-inline-asm-use.ll >> llvm/trunk/test/CodeGen/PowerPC/ctrloop-reg.ll >> llvm/trunk/test/CodeGen/PowerPC/emptystruct.ll >> llvm/trunk/test/CodeGen/PowerPC/fsl-e500mc.ll >> llvm/trunk/test/CodeGen/PowerPC/fsl-e5500.ll >> llvm/trunk/test/CodeGen/PowerPC/glob-comp-aa-crash.ll >> llvm/trunk/test/CodeGen/PowerPC/isel-rc-nox0.ll >> llvm/trunk/test/CodeGen/PowerPC/licm-remat.ll >> llvm/trunk/test/CodeGen/PowerPC/lxv-aligned-stack-slots.ll >> llvm/trunk/test/CodeGen/PowerPC/memcpy-vec.ll >> llvm/trunk/test/CodeGen/PowerPC/memcpy_dereferenceable.ll >> llvm/trunk/test/CodeGen/PowerPC/memset-nc-le.ll >> llvm/trunk/test/CodeGen/PowerPC/memset-nc.ll >> llvm/trunk/test/CodeGen/PowerPC/merge-st-chain-op.ll >> llvm/trunk/test/CodeGen/PowerPC/ppc-empty-fs.ll >> llvm/trunk/test/CodeGen/PowerPC/pr27350.ll >> llvm/trunk/test/CodeGen/PowerPC/resolvefi-basereg.ll >> llvm/trunk/test/CodeGen/PowerPC/resolvefi-disp.ll >> llvm/trunk/test/CodeGen/PowerPC/structsinmem.ll >> llvm/trunk/test/CodeGen/PowerPC/structsinregs.ll >> llvm/trunk/test/CodeGen/PowerPC/stwu8.ll >> llvm/trunk/test/CodeGen/PowerPC/tailcall-string-rvo.ll >> llvm/trunk/test/CodeGen/PowerPC/toc-load-sched-bug.ll >> llvm/trunk/test/CodeGen/RISCV/frame.ll >> llvm/trunk/test/CodeGen/SystemZ/dag-combine-02.ll >> llvm/trunk/test/CodeGen/SystemZ/loop-01.ll >> llvm/trunk/test/CodeGen/SystemZ/loop-03.ll >> llvm/trunk/test/CodeGen/SystemZ/memcpy-01.ll >> llvm/trunk/test/CodeGen/SystemZ/memset-01.ll >> llvm/trunk/test/CodeGen/SystemZ/memset-02.ll >> llvm/trunk/test/CodeGen/SystemZ/memset-03.ll >> llvm/trunk/test/CodeGen/SystemZ/memset-04.ll >> llvm/trunk/test/CodeGen/SystemZ/tail-call-mem-intrinsics.ll >> llvm/trunk/test/CodeGen/Thumb/2011-05-11-DAGLegalizer.ll >> llvm/trunk/test/CodeGen/Thumb/dyn-stackalloc.ll >> llvm/trunk/test/CodeGen/Thumb/ldm-stm-base-materialization-thumb2.ll >> llvm/trunk/test/CodeGen/Thumb/ldm-stm-base-materialization.ll >> llvm/trunk/test/CodeGen/Thumb/stack-coloring-without-frame-ptr.ll >> llvm/trunk/test/CodeGen/Thumb2/2009-08-04-SubregLoweringBug.ll >> llvm/trunk/test/CodeGen/Thumb2/2012-01-13-CBNZBug.ll >> llvm/trunk/test/CodeGen/WebAssembly/global.ll >> llvm/trunk/test/CodeGen/WebAssembly/mem-intrinsics.ll >> llvm/trunk/test/CodeGen/X86/2007-10-15-CoalescerCrash.ll >> llvm/trunk/test/CodeGen/X86/2009-01-25-NoSSE.ll >> llvm/trunk/test/CodeGen/X86/2009-11-16-UnfoldMemOpBug.ll >> llvm/trunk/test/CodeGen/X86/2010-04-08-CoalescerBug.ll >> llvm/trunk/test/CodeGen/X86/2010-04-21-CoalescerBug.ll >> llvm/trunk/test/CodeGen/X86/2010-06-25-CoalescerSubRegDefDead.ll >> llvm/trunk/test/CodeGen/X86/2010-09-17-SideEffectsInChain.ll >> llvm/trunk/test/CodeGen/X86/2012-01-10-UndefExceptionEdge.ll >> llvm/trunk/test/CodeGen/X86/alignment-2.ll >> llvm/trunk/test/CodeGen/X86/bug26810.ll >> llvm/trunk/test/CodeGen/X86/darwin-bzero.ll >> llvm/trunk/test/CodeGen/X86/fast-isel-call.ll >> llvm/trunk/test/CodeGen/X86/fast-isel-deadcode.ll >> llvm/trunk/test/CodeGen/X86/fast-isel-x86-64.ll >> llvm/trunk/test/CodeGen/X86/force-align-stack-alloca.ll >> llvm/trunk/test/CodeGen/X86/immediate_merging.ll >> llvm/trunk/test/CodeGen/X86/immediate_merging64.ll >> llvm/trunk/test/CodeGen/X86/lea-opt-memop-check-1.ll >> llvm/trunk/test/CodeGen/X86/load-slice.ll >> llvm/trunk/test/CodeGen/X86/lsr-normalization.ll >> llvm/trunk/test/CodeGen/X86/mcu-abi.ll >> llvm/trunk/test/CodeGen/X86/mem-intrin-base-reg.ll >> llvm/trunk/test/CodeGen/X86/memcpy-2.ll >> llvm/trunk/test/CodeGen/X86/memcpy-from-string.ll >> llvm/trunk/test/CodeGen/X86/memcpy.ll >> llvm/trunk/test/CodeGen/X86/memset-2.ll >> llvm/trunk/test/CodeGen/X86/memset-3.ll >> llvm/trunk/test/CodeGen/X86/memset-nonzero.ll >> llvm/trunk/test/CodeGen/X86/memset-sse-stack-realignment.ll >> llvm/trunk/test/CodeGen/X86/memset.ll >> llvm/trunk/test/CodeGen/X86/memset64-on-x86-32.ll >> llvm/trunk/test/CodeGen/X86/misaligned-memset.ll >> llvm/trunk/test/CodeGen/X86/misched-new.ll >> llvm/trunk/test/CodeGen/X86/negate-add-zero.ll >> llvm/trunk/test/CodeGen/X86/optimize-max-0.ll >> llvm/trunk/test/CodeGen/X86/pr11985.ll >> llvm/trunk/test/CodeGen/X86/pr14333.ll >> llvm/trunk/test/CodeGen/X86/pr34088.ll >> llvm/trunk/test/CodeGen/X86/ragreedy-hoist-spill.ll >> llvm/trunk/test/CodeGen/X86/regparm.ll >> llvm/trunk/test/CodeGen/X86/remat-fold-load.ll >> llvm/trunk/test/CodeGen/X86/slow-unaligned-mem.ll >> llvm/trunk/test/CodeGen/X86/small-byval-memcpy.ll >> llvm/trunk/test/CodeGen/X86/stack-align.ll >> llvm/trunk/test/CodeGen/X86/stack-protector.ll >> llvm/trunk/test/CodeGen/X86/tail-dup-merge-loop-headers.ll >> llvm/trunk/test/CodeGen/X86/tailcall-mem-intrinsics.ll >> llvm/trunk/test/CodeGen/X86/tlv-1.ll >> llvm/trunk/test/CodeGen/X86/unaligned-load.ll >> llvm/trunk/test/CodeGen/X86/unused_stackslots.ll >> llvm/trunk/test/CodeGen/X86/unwindraise.ll >> llvm/trunk/test/CodeGen/X86/variable-sized-darwin-bzero.ll >> llvm/trunk/test/CodeGen/X86/vectorcall.ll >> llvm/trunk/test/CodeGen/X86/x86-64-static-relo-movl.ll >> llvm/trunk/test/CodeGen/X86/x86-repmov-copy-eflags.ll >> llvm/trunk/test/CodeGen/XCore/memcpy.ll >> llvm/trunk/test/DebugInfo/AArch64/frameindices.ll >> llvm/trunk/test/DebugInfo/COFF/types-array.ll >> llvm/trunk/test/DebugInfo/Generic/2010-10-01-crash.ll >> llvm/trunk/test/DebugInfo/X86/array.ll >> llvm/trunk/test/DebugInfo/X86/array2.ll >> llvm/trunk/test/DebugInfo/X86/debug-ranges-offset.ll >> llvm/trunk/test/DebugInfo/X86/pieces-2.ll >> llvm/trunk/test/DebugInfo/X86/pieces-3.ll >> llvm/trunk/test/DebugInfo/X86/safestack-byval.ll >> llvm/trunk/test/DebugInfo/X86/split-dwarf-cross-unit-reference.ll >> llvm/trunk/test/DebugInfo/X86/sroasplit-1.ll >> llvm/trunk/test/DebugInfo/X86/sroasplit-2.ll >> llvm/trunk/test/DebugInfo/X86/sroasplit-4.ll >> llvm/trunk/test/DebugInfo/X86/sroasplit-5.ll >> llvm/trunk/test/DebugInfo/X86/sroasplit-dbg-declare.ll >> llvm/trunk/test/Instrumentation/AddressSanitizer/basic.ll >> llvm/trunk/test/Instrumentation/AddressSanitizer/stack-poiso >> ning-byval-args.ll >> llvm/trunk/test/Instrumentation/DataFlowSanitizer/memset.ll >> (145 more files...) >> >> >> >> _______________________________________________ >> llvm-commits mailing list >> llvm-commits at lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits >> > > > > -- > *Alexandre Isoard* > <memcopy.sed>_______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > > >-- *Alexandre Isoard* -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20180124/b38f60cc/attachment.html>
Daniel Neilson via llvm-dev
2018-Jan-25 03:11 UTC
[llvm-dev] [PATCH] D41675: Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1)
Hi Alexandre, Before the change you would have been expecting one of the following, correct? a) call void @llvm.memcpy.p3i8.p1i8.i64(i8 addrspace(3)* bitcast ([512 x float] addrspace(3)* [[SPM0]] to i8 addrspace(3)*), i8 addrspace(1)* [[APTR]], i64 2048, i32 0, i1 false) b) call void @llvm.memcpy.p3i8.p1i8.i64(i8 addrspace(3)* bitcast ([512 x float] addrspace(3)* [[SPM0]] to i8 addrspace(3)*), i8 addrspace(1)* [[APTR]], i64 2048, i32 1, i1 false) Functionally, (a) & (b) are both saying that the src & dest pointers are 1-byte aligned; i.e. they’re both basically saying “I don’t really have any better information on alignment, so we’ll go with 1-byte aligned since it can’t be less aligned than that” After the patch, you’re seeing: i) call void @llvm.memcpy.p3i8.p1i8.i64(i8 addrspace(3)* align 1 bitcast ([512 x float] addrspace(3)* [[SPM0]] to i8 addrspace(3)*), i8 align 1 addrspace(1)* [[APTR]], i64 2048, i1 false) but your IR test, that you ran the sed script on, is saying to expect: ii) call void @llvm.memcpy.p3i8.p1i8.i64(i8 addrspace(3)* bitcast ([512 x float] addrspace(3)* [[SPM0]] to i8 addrspace(3)*), i8 addrspace(1)* [[APTR]], i64 2048, i1 false) Is that correct? Just like (a) & (b), both (i) & (ii) are functionally equivalent. The script rule that would have changed that was: s~call void @llvm\.mem(cpy|move)\.p([^(]*)i64\(i8([^*]*)\* (.*), i8([^*]*)\* (.*), i64 (.*), i32 [01], i1 ([^)]*)\)~call void @llvm.mem\1.p\2i64(i8\3* \4, i8\5* \6, i64 \7, i1 \8)~g It was converting both (a) and (b) into (ii). If that’s not what you’re seeing/wanting, then you can just add the ‘align 1’s into your test’s CHECK pattern, or alter the sed script by changing “..., i32 [01], i1...” into “..., i32 0, i1…" -Daniel On Jan 24, 2018, at 8:47 PM, Alexandre Isoard <alexandre.isoard at gmail.com<mailto:alexandre.isoard at gmail.com>> wrote: Thanks, that worked like a charm except for the following: llvm generate: call void @llvm.memcpy.p3i8.p1i8.i64(i8 addrspace(3)* align 1 bitcast ([512 x float] addrspace(3)* @a_scratchpad to i8 addrspace(3)*), i8 addrspace(1)* align 1 %0, i64 2048, i1 false) And we expected: call void @llvm.memcpy.p3i8.p1i8.i64(i8 addrspace(3)* bitcast ([512 x float] addrspace(3)* [[SPM0]] to i8 addrspace(3)*), i8 addrspace(1)* [[APTR]], i64 2048, i1 false) Notice the presence of "align 1". I'm not sure which side is correct, isn't it equivalent (that is, this is the natural ABI alignment of that type)? Here is my datalayout: target datalayout = "e-m:e-i64:64-n8:16:32:64-S128-v16:16-v24:32-v32:32-v48:64-v96:128-v192:256-v256:256-v512:512-v1024:1024" 2018-01-23 20:14 GMT-08:00 Daniel Neilson <dneilson at azul.com<mailto:dneilson at azul.com>>: Hi Alexandre, The script uses extended-sed syntax, so you need to run sed with the -E option. For example, when preparing the patch I created a file ( script.sed ) containing all of the lines that I copied into the commit message. Then, I ran this bash one-liner from the test directory: for f in $(find . -name '*.ll'); do sed -E -i ‘.sedbak' -f script.sed $f; done When I was happy with the results, then: find . -name ‘*.sedbak’ --exec rm -f {} \; Please let me know if that doesn’t work for you. -Daniel On Jan 23, 2018, at 8:33 PM, Alexandre Isoard via llvm-dev <llvm-dev at lists.llvm.org<mailto:llvm-dev at lists.llvm.org>> wrote: Hello, Is there a script to update those test cases? I see mention of a sed script in the commit message but when I try it (see attached) on sed I get the following error: sed: file script line 2: invalid reference \3 on `s' command's RHS Did I lose something in a copy-paste? Is it not really a sed script? How do I run it? On Fri, Jan 19, 2018 at 9:15 AM, Daniel Neilson via Phabricator via llvm-commits <llvm-commits at lists.llvm.org<mailto:llvm-commits at lists.llvm.org>> wrote: This revision was automatically updated to reflect the committed changes. Closed by commit rL322965: Remove alignment argument from memcpy/memmove/memset in favour of alignment… (authored by dneilson, committed by ). Repository: rL LLVM https://reviews.llvm.org/D41675 Files: llvm/trunk/docs/LangRef.rst llvm/trunk/include/llvm/IR/IntrinsicInst.h llvm/trunk/include/llvm/IR/Intrinsics.td<http://rinsics.td/> llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp llvm/trunk/lib/IR/AutoUpgrade.cpp llvm/trunk/lib/IR/IRBuilder.cpp llvm/trunk/lib/IR/Verifier.cpp llvm/trunk/lib/Target/AArch64/AArch64FastISel.cpp llvm/trunk/lib/Target/ARM/ARMFastISel.cpp llvm/trunk/lib/Target/Mips/MipsFastISel.cpp llvm/trunk/lib/Target/X86/X86FastISel.cpp llvm/trunk/lib/Transforms/InstCombine/InstCombineCalls.cpp llvm/trunk/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp llvm/trunk/test/Analysis/AliasSet/memtransfer.ll llvm/trunk/test/Analysis/BasicAA/assume.ll llvm/trunk/test/Analysis/BasicAA/cs-cs.ll llvm/trunk/test/Analysis/BasicAA/gep-and-alias.ll llvm/trunk/test/Analysis/BasicAA/getmodrefinfo-cs-cs.ll llvm/trunk/test/Analysis/BasicAA/guards.ll llvm/trunk/test/Analysis/BasicAA/modref.ll llvm/trunk/test/Analysis/CallGraph/no-intrinsics.ll llvm/trunk/test/Analysis/ConstantFolding/gep-constanfolding-error.ll llvm/trunk/test/Analysis/DependenceAnalysis/Preliminary.ll llvm/trunk/test/Analysis/GlobalsModRef/memset-escape.ll llvm/trunk/test/Analysis/GlobalsModRef/no-escape.ll llvm/trunk/test/Analysis/GlobalsModRef/pr12351.ll llvm/trunk/test/Analysis/GlobalsModRef/volatile-instrs.ll llvm/trunk/test/Analysis/Lint/noalias-byval.ll llvm/trunk/test/Analysis/MemorySSA/basicaa-memcpy.ll llvm/trunk/test/Analysis/ScalarEvolution/avoid-smax-1.ll llvm/trunk/test/Analysis/ScalarEvolution/trip-count.ll llvm/trunk/test/Analysis/ScalarEvolution/trip-count3.ll llvm/trunk/test/Analysis/TypeBasedAliasAnalysis/functionattrs.ll llvm/trunk/test/Analysis/TypeBasedAliasAnalysis/memcpyopt.ll llvm/trunk/test/Bitcode/standardCIntrinsic.3.2.ll llvm/trunk/test/Bitcode/upgrade-memory-intrinsics.ll llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll llvm/trunk/test/CodeGen/AArch64/PBQP-csr.ll llvm/trunk/test/CodeGen/AArch64/aarch64-DAGCombine-findBetterNeighborChains-crash.ll llvm/trunk/test/CodeGen/AArch64/arm64-2012-05-07-MemcpyAlignBug.ll llvm/trunk/test/CodeGen/AArch64/arm64-abi-varargs.ll llvm/trunk/test/CodeGen/AArch64/arm64-abi_align.ll llvm/trunk/test/CodeGen/AArch64/arm64-fast-isel-intrinsic.ll llvm/trunk/test/CodeGen/AArch64/arm64-memcpy-inline.ll llvm/trunk/test/CodeGen/AArch64/arm64-memset-inline.ll llvm/trunk/test/CodeGen/AArch64/arm64-memset-to-bzero.ll llvm/trunk/test/CodeGen/AArch64/arm64-misaligned-memcpy-inline.ll llvm/trunk/test/CodeGen/AArch64/arm64-misched-basic-A53.ll llvm/trunk/test/CodeGen/AArch64/arm64-misched-basic-A57.ll llvm/trunk/test/CodeGen/AArch64/arm64-stur.ll llvm/trunk/test/CodeGen/AArch64/arm64-virtual_base.ll llvm/trunk/test/CodeGen/AArch64/fast-isel-memcpy.ll llvm/trunk/test/CodeGen/AArch64/func-argpassing.ll llvm/trunk/test/CodeGen/AArch64/ldp-stp-scaled-unscaled-pairs.ll llvm/trunk/test/CodeGen/AArch64/ldst-paired-aliasing.ll llvm/trunk/test/CodeGen/AArch64/ldst-zero.ll llvm/trunk/test/CodeGen/AArch64/machine-combiner-madd.ll llvm/trunk/test/CodeGen/AArch64/memcpy-f128.ll llvm/trunk/test/CodeGen/AArch64/merge-store-dependency.ll llvm/trunk/test/CodeGen/AArch64/mergestores_noimplicitfloat.ll llvm/trunk/test/CodeGen/AArch64/misched-stp.ll llvm/trunk/test/CodeGen/AArch64/pr33172.ll llvm/trunk/test/CodeGen/AArch64/tailcall-mem-intrinsics.ll llvm/trunk/test/CodeGen/AArch64/tailcall-string-rvo.ll llvm/trunk/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll llvm/trunk/test/CodeGen/AMDGPU/lds-alignment.ll llvm/trunk/test/CodeGen/AMDGPU/llvm.memcpy.ll llvm/trunk/test/CodeGen/AMDGPU/lower-mem-intrinsics.ll llvm/trunk/test/CodeGen/AMDGPU/promote-alloca-mem-intrinsics.ll llvm/trunk/test/CodeGen/AMDGPU/stack-size-overflow.ll llvm/trunk/test/CodeGen/ARM/2009-03-07-SpillerBug.ll llvm/trunk/test/CodeGen/ARM/2011-03-10-DAGCombineCrash.ll llvm/trunk/test/CodeGen/ARM/2011-10-26-memset-inline.ll llvm/trunk/test/CodeGen/ARM/2011-10-26-memset-with-neon.ll llvm/trunk/test/CodeGen/ARM/2012-04-24-SplitEHCriticalEdge.ll llvm/trunk/test/CodeGen/ARM/Windows/memset.ll llvm/trunk/test/CodeGen/ARM/Windows/no-aeabi.ll llvm/trunk/test/CodeGen/ARM/arm-eabi.ll llvm/trunk/test/CodeGen/ARM/constantpool-promote-ldrh.ll llvm/trunk/test/CodeGen/ARM/constantpool-promote.ll llvm/trunk/test/CodeGen/ARM/crash-O0.ll llvm/trunk/test/CodeGen/ARM/debug-info-blocks.ll llvm/trunk/test/CodeGen/ARM/dyn-stackalloc.ll llvm/trunk/test/CodeGen/ARM/fast-isel-intrinsic.ll llvm/trunk/test/CodeGen/ARM/interval-update-remat.ll llvm/trunk/test/CodeGen/ARM/ldm-stm-base-materialization.ll llvm/trunk/test/CodeGen/ARM/machine-cse-cmp.ll llvm/trunk/test/CodeGen/ARM/memcpy-inline.ll llvm/trunk/test/CodeGen/ARM/memcpy-ldm-stm.ll llvm/trunk/test/CodeGen/ARM/memcpy-no-inline.ll llvm/trunk/test/CodeGen/ARM/memfunc.ll llvm/trunk/test/CodeGen/ARM/memset-inline.ll llvm/trunk/test/CodeGen/ARM/stack-protector-bmovpcb_call.ll llvm/trunk/test/CodeGen/ARM/struct-byval-frame-index.ll llvm/trunk/test/CodeGen/ARM/tailcall-mem-intrinsics.ll llvm/trunk/test/CodeGen/AVR/std-ldd-immediate-overflow.ll llvm/trunk/test/CodeGen/BPF/byval.ll llvm/trunk/test/CodeGen/BPF/ex1.ll llvm/trunk/test/CodeGen/BPF/fi_ri.ll llvm/trunk/test/CodeGen/BPF/reloc.ll llvm/trunk/test/CodeGen/BPF/rodata_1.ll llvm/trunk/test/CodeGen/BPF/rodata_2.ll llvm/trunk/test/CodeGen/BPF/rodata_3.ll llvm/trunk/test/CodeGen/BPF/rodata_4.ll llvm/trunk/test/CodeGen/BPF/sanity.ll llvm/trunk/test/CodeGen/BPF/undef.ll llvm/trunk/test/CodeGen/BPF/warn-call.ll llvm/trunk/test/CodeGen/Generic/ForceStackAlign.ll llvm/trunk/test/CodeGen/Generic/invalid-memcpy.ll llvm/trunk/test/CodeGen/Hexagon/adjust-latency-stackST.ll llvm/trunk/test/CodeGen/Hexagon/branchfolder-keep-impdef.ll llvm/trunk/test/CodeGen/Hexagon/early-if-conversion-bug1.ll llvm/trunk/test/CodeGen/Hexagon/mem-fi-add.ll llvm/trunk/test/CodeGen/Hexagon/memcpy-likely-aligned.ll llvm/trunk/test/CodeGen/Hexagon/rdf-filter-defs.ll llvm/trunk/test/CodeGen/Hexagon/store-imm-stack-object.ll llvm/trunk/test/CodeGen/Hexagon/tail-call-mem-intrinsics.ll llvm/trunk/test/CodeGen/MSP430/memset.ll llvm/trunk/test/CodeGen/Mips/2012-12-12-ExpandMemcpy.ll llvm/trunk/test/CodeGen/Mips/Fast-ISel/memtest1.ll llvm/trunk/test/CodeGen/Mips/biggot.ll llvm/trunk/test/CodeGen/Mips/cconv/arguments-small-structures-bigger-than-32bits.ll llvm/trunk/test/CodeGen/Mips/cconv/arguments-varargs-small-structs-byte.ll llvm/trunk/test/CodeGen/Mips/cconv/arguments-varargs-small-structs-combinations.ll llvm/trunk/test/CodeGen/Mips/cconv/return-struct.ll llvm/trunk/test/CodeGen/Mips/largeimmprinting.ll llvm/trunk/test/CodeGen/Mips/long-calls.ll llvm/trunk/test/CodeGen/Mips/memcpy.ll llvm/trunk/test/CodeGen/Mips/pr33978.ll llvm/trunk/test/CodeGen/Mips/tailcall/tailcall.ll llvm/trunk/test/CodeGen/NVPTX/lower-aggr-copies.ll llvm/trunk/test/CodeGen/PowerPC/2011-12-05-NoSpillDupCR.ll llvm/trunk/test/CodeGen/PowerPC/2011-12-06-SpillAndRestoreCR.ll llvm/trunk/test/CodeGen/PowerPC/MMO-flags-assertion.ll llvm/trunk/test/CodeGen/PowerPC/aantidep-inline-asm-use.ll llvm/trunk/test/CodeGen/PowerPC/ctrloop-reg.ll llvm/trunk/test/CodeGen/PowerPC/emptystruct.ll llvm/trunk/test/CodeGen/PowerPC/fsl-e500mc.ll llvm/trunk/test/CodeGen/PowerPC/fsl-e5500.ll llvm/trunk/test/CodeGen/PowerPC/glob-comp-aa-crash.ll llvm/trunk/test/CodeGen/PowerPC/isel-rc-nox0.ll llvm/trunk/test/CodeGen/PowerPC/licm-remat.ll llvm/trunk/test/CodeGen/PowerPC/lxv-aligned-stack-slots.ll llvm/trunk/test/CodeGen/PowerPC/memcpy-vec.ll llvm/trunk/test/CodeGen/PowerPC/memcpy_dereferenceable.ll llvm/trunk/test/CodeGen/PowerPC/memset-nc-le.ll llvm/trunk/test/CodeGen/PowerPC/memset-nc.ll llvm/trunk/test/CodeGen/PowerPC/merge-st-chain-op.ll llvm/trunk/test/CodeGen/PowerPC/ppc-empty-fs.ll llvm/trunk/test/CodeGen/PowerPC/pr27350.ll llvm/trunk/test/CodeGen/PowerPC/resolvefi-basereg.ll llvm/trunk/test/CodeGen/PowerPC/resolvefi-disp.ll llvm/trunk/test/CodeGen/PowerPC/structsinmem.ll llvm/trunk/test/CodeGen/PowerPC/structsinregs.ll llvm/trunk/test/CodeGen/PowerPC/stwu8.ll llvm/trunk/test/CodeGen/PowerPC/tailcall-string-rvo.ll llvm/trunk/test/CodeGen/PowerPC/toc-load-sched-bug.ll llvm/trunk/test/CodeGen/RISCV/frame.ll llvm/trunk/test/CodeGen/SystemZ/dag-combine-02.ll llvm/trunk/test/CodeGen/SystemZ/loop-01.ll llvm/trunk/test/CodeGen/SystemZ/loop-03.ll llvm/trunk/test/CodeGen/SystemZ/memcpy-01.ll llvm/trunk/test/CodeGen/SystemZ/memset-01.ll llvm/trunk/test/CodeGen/SystemZ/memset-02.ll llvm/trunk/test/CodeGen/SystemZ/memset-03.ll llvm/trunk/test/CodeGen/SystemZ/memset-04.ll llvm/trunk/test/CodeGen/SystemZ/tail-call-mem-intrinsics.ll llvm/trunk/test/CodeGen/Thumb/2011-05-11-DAGLegalizer.ll llvm/trunk/test/CodeGen/Thumb/dyn-stackalloc.ll llvm/trunk/test/CodeGen/Thumb/ldm-stm-base-materialization-thumb2.ll llvm/trunk/test/CodeGen/Thumb/ldm-stm-base-materialization.ll llvm/trunk/test/CodeGen/Thumb/stack-coloring-without-frame-ptr.ll llvm/trunk/test/CodeGen/Thumb2/2009-08-04-SubregLoweringBug.ll llvm/trunk/test/CodeGen/Thumb2/2012-01-13-CBNZBug.ll llvm/trunk/test/CodeGen/WebAssembly/global.ll llvm/trunk/test/CodeGen/WebAssembly/mem-intrinsics.ll llvm/trunk/test/CodeGen/X86/2007-10-15-CoalescerCrash.ll llvm/trunk/test/CodeGen/X86/2009-01-25-NoSSE.ll llvm/trunk/test/CodeGen/X86/2009-11-16-UnfoldMemOpBug.ll llvm/trunk/test/CodeGen/X86/2010-04-08-CoalescerBug.ll llvm/trunk/test/CodeGen/X86/2010-04-21-CoalescerBug.ll llvm/trunk/test/CodeGen/X86/2010-06-25-CoalescerSubRegDefDead.ll llvm/trunk/test/CodeGen/X86/2010-09-17-SideEffectsInChain.ll llvm/trunk/test/CodeGen/X86/2012-01-10-UndefExceptionEdge.ll llvm/trunk/test/CodeGen/X86/alignment-2.ll llvm/trunk/test/CodeGen/X86/bug26810.ll llvm/trunk/test/CodeGen/X86/darwin-bzero.ll llvm/trunk/test/CodeGen/X86/fast-isel-call.ll llvm/trunk/test/CodeGen/X86/fast-isel-deadcode.ll llvm/trunk/test/CodeGen/X86/fast-isel-x86-64.ll llvm/trunk/test/CodeGen/X86/force-align-stack-alloca.ll llvm/trunk/test/CodeGen/X86/immediate_merging.ll llvm/trunk/test/CodeGen/X86/immediate_merging64.ll llvm/trunk/test/CodeGen/X86/lea-opt-memop-check-1.ll llvm/trunk/test/CodeGen/X86/load-slice.ll llvm/trunk/test/CodeGen/X86/lsr-normalization.ll llvm/trunk/test/CodeGen/X86/mcu-abi.ll llvm/trunk/test/CodeGen/X86/mem-intrin-base-reg.ll llvm/trunk/test/CodeGen/X86/memcpy-2.ll llvm/trunk/test/CodeGen/X86/memcpy-from-string.ll llvm/trunk/test/CodeGen/X86/memcpy.ll llvm/trunk/test/CodeGen/X86/memset-2.ll llvm/trunk/test/CodeGen/X86/memset-3.ll llvm/trunk/test/CodeGen/X86/memset-nonzero.ll llvm/trunk/test/CodeGen/X86/memset-sse-stack-realignment.ll llvm/trunk/test/CodeGen/X86/memset.ll llvm/trunk/test/CodeGen/X86/memset64-on-x86-32.ll llvm/trunk/test/CodeGen/X86/misaligned-memset.ll llvm/trunk/test/CodeGen/X86/misched-new.ll llvm/trunk/test/CodeGen/X86/negate-add-zero.ll llvm/trunk/test/CodeGen/X86/optimize-max-0.ll llvm/trunk/test/CodeGen/X86/pr11985.ll llvm/trunk/test/CodeGen/X86/pr14333.ll llvm/trunk/test/CodeGen/X86/pr34088.ll llvm/trunk/test/CodeGen/X86/ragreedy-hoist-spill.ll llvm/trunk/test/CodeGen/X86/regparm.ll llvm/trunk/test/CodeGen/X86/remat-fold-load.ll llvm/trunk/test/CodeGen/X86/slow-unaligned-mem.ll llvm/trunk/test/CodeGen/X86/small-byval-memcpy.ll llvm/trunk/test/CodeGen/X86/stack-align.ll llvm/trunk/test/CodeGen/X86/stack-protector.ll llvm/trunk/test/CodeGen/X86/tail-dup-merge-loop-headers.ll llvm/trunk/test/CodeGen/X86/tailcall-mem-intrinsics.ll llvm/trunk/test/CodeGen/X86/tlv-1.ll llvm/trunk/test/CodeGen/X86/unaligned-load.ll llvm/trunk/test/CodeGen/X86/unused_stackslots.ll llvm/trunk/test/CodeGen/X86/unwindraise.ll llvm/trunk/test/CodeGen/X86/variable-sized-darwin-bzero.ll llvm/trunk/test/CodeGen/X86/vectorcall.ll llvm/trunk/test/CodeGen/X86/x86-64-static-relo-movl.ll llvm/trunk/test/CodeGen/X86/x86-repmov-copy-eflags.ll llvm/trunk/test/CodeGen/XCore/memcpy.ll llvm/trunk/test/DebugInfo/AArch64/frameindices.ll llvm/trunk/test/DebugInfo/COFF/types-array.ll llvm/trunk/test/DebugInfo/Generic/2010-10-01-crash.ll llvm/trunk/test/DebugInfo/X86/array.ll llvm/trunk/test/DebugInfo/X86/array2.ll llvm/trunk/test/DebugInfo/X86/debug-ranges-offset.ll llvm/trunk/test/DebugInfo/X86/pieces-2.ll llvm/trunk/test/DebugInfo/X86/pieces-3.ll llvm/trunk/test/DebugInfo/X86/safestack-byval.ll llvm/trunk/test/DebugInfo/X86/split-dwarf-cross-unit-reference.ll llvm/trunk/test/DebugInfo/X86/sroasplit-1.ll llvm/trunk/test/DebugInfo/X86/sroasplit-2.ll llvm/trunk/test/DebugInfo/X86/sroasplit-4.ll llvm/trunk/test/DebugInfo/X86/sroasplit-5.ll llvm/trunk/test/DebugInfo/X86/sroasplit-dbg-declare.ll llvm/trunk/test/Instrumentation/AddressSanitizer/basic.ll llvm/trunk/test/Instrumentation/AddressSanitizer/stack-poisoning-byval-args.ll llvm/trunk/test/Instrumentation/DataFlowSanitizer/memset.ll (145 more files...) _______________________________________________ llvm-commits mailing list llvm-commits at lists.llvm.org<mailto:llvm-commits at lists.llvm.org> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits -- Alexandre Isoard <memcopy.sed>_______________________________________________ LLVM Developers mailing list llvm-dev at lists.llvm.org<mailto:llvm-dev at lists.llvm.org> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev -- Alexandre Isoard -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20180125/49bc62ba/attachment-0001.html>
Alexandre Isoard via llvm-dev
2018-Jan-25 03:24 UTC
[llvm-dev] [PATCH] D41675: Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1)
Yes, all that is correct. My question is more a long term question: why do the .ll printer specify the alignment if it is equivalent to the default one? That is, it seems the sed script expect the printer to not specify it (this would match the load/store behavior), but the ll-printer does specify it, which either means the printer is not ideal on this case and I should fix it, or in this case the ABI alignment is not what I think it is, then I should fix the test-cases. I'm not sure which side is correct. On Wed, Jan 24, 2018 at 7:11 PM, Daniel Neilson <dneilson at azul.com> wrote:> Hi Alexandre, > Before the change you would have been expecting one of the following, > correct? > a) call void @llvm.memcpy.p3i8.p1i8.i64(i8 addrspace(3)* bitcast ([512 x > float] addrspace(3)* [[SPM0]] to i8 addrspace(3)*), i8 addrspace(1)* > [[APTR]], i64 2048, i32 0, i1 false) > b) call void @llvm.memcpy.p3i8.p1i8.i64(i8 addrspace(3)* bitcast ([512 x > float] addrspace(3)* [[SPM0]] to i8 addrspace(3)*), i8 addrspace(1)* > [[APTR]], i64 2048, i32 1, i1 false) > > Functionally, (a) & (b) are both saying that the src & dest pointers are > 1-byte aligned; i.e. they’re both basically saying “I don’t really have any > better information on alignment, so we’ll go with 1-byte aligned since it > can’t be less aligned than that” > > After the patch, you’re seeing: > i) call void @llvm.memcpy.p3i8.p1i8.i64(i8 addrspace(3)* align 1 bitcast > ([512 x float] addrspace(3)* [[SPM0]] to i8 addrspace(3)*), i8 align 1 > addrspace(1)* [[APTR]], i64 2048, i1 false) > but your IR test, that you ran the sed script on, is saying to expect: > ii) call void @llvm.memcpy.p3i8.p1i8.i64(i8 addrspace(3)* bitcast ([512 x > float] addrspace(3)* [[SPM0]] to i8 addrspace(3)*), i8 addrspace(1)* > [[APTR]], i64 2048, i1 false) > > Is that correct? Just like (a) & (b), both (i) & (ii) are functionally > equivalent. > > The script rule that would have changed that was: > s~call void @llvm\.mem(cpy|move)\.p([^(]*)i64\(i8([^*]*)\* (.*), > i8([^*]*)\* (.*), i64 (.*), i32 [01], i1 ([^)]*)\)~call void @llvm.mem\1.p\2i64(i8\3* > \4, i8\5* \6, i64 \7, i1 \8)~g > > It was converting both (a) and (b) into (ii). If that’s not what you’re > seeing/wanting, then you can just add the ‘align 1’s into your test’s CHECK > pattern, or alter the sed script by changing “..., i32 [01], i1...” > into “..., i32 0, i1…" > > -Daniel > > On Jan 24, 2018, at 8:47 PM, Alexandre Isoard <alexandre.isoard at gmail.com> > wrote: > > Thanks, that worked like a charm except for the following: > > llvm generate: > > call void @llvm.memcpy.p3i8.p1i8.i64(i8 addrspace(3)* align 1 bitcast > ([512 x float] addrspace(3)* @a_scratchpad to i8 addrspace(3)*), i8 > addrspace(1)* align 1 %0, i64 2048, i1 false) > > And we expected: > > call void @llvm.memcpy.p3i8.p1i8.i64(i8 addrspace(3)* bitcast ([512 x > float] addrspace(3)* [[SPM0]] to i8 addrspace(3)*), i8 addrspace(1)* > [[APTR]], i64 2048, i1 false) > > Notice the presence of "align 1". I'm not sure which side is correct, > isn't it equivalent (that is, this is the natural ABI alignment of that > type)? > > Here is my datalayout: > > target datalayout = "e-m:e-i64:64-n8:16:32:64- > S128-v16:16-v24:32-v32:32-v48:64-v96:128-v192:256-v256:256- > v512:512-v1024:1024" > > > 2018-01-23 20:14 GMT-08:00 Daniel Neilson <dneilson at azul.com>: > >> Hi Alexandre, >> The script uses extended-sed syntax, so you need to run sed with the -E >> option. >> >> For example, when preparing the patch I created a file ( script.sed ) >> containing all of the lines that I copied into the commit message. Then, I >> ran this bash one-liner from the test directory: >> for f in $(find . -name '*.ll'); do sed -E -i ‘.sedbak' -f script.sed $f; >> done >> >> When I was happy with the results, then: find . -name ‘*.sedbak’ --exec >> rm -f {} \; >> >> Please let me know if that doesn’t work for you. >> >> -Daniel >> >> On Jan 23, 2018, at 8:33 PM, Alexandre Isoard via llvm-dev < >> llvm-dev at lists.llvm.org> wrote: >> >> Hello, >> >> Is there a script to update those test cases? I see mention of a sed >> script in the commit message but when I try it (see attached) on sed I get >> the following error: >> >> sed: file script line 2: invalid reference \3 on `s' command's RHS >> >> Did I lose something in a copy-paste? Is it not really a sed script? How >> do I run it? >> >> >> On Fri, Jan 19, 2018 at 9:15 AM, Daniel Neilson via Phabricator via >> llvm-commits <llvm-commits at lists.llvm.org> wrote: >> >>> This revision was automatically updated to reflect the committed changes. >>> Closed by commit rL322965: Remove alignment argument from >>> memcpy/memmove/memset in favour of alignment… (authored by dneilson, >>> committed by ). >>> >>> Repository: >>> rL LLVM >>> >>> https://reviews.llvm.org/D41675 >>> >>> Files: >>> llvm/trunk/docs/LangRef.rst >>> llvm/trunk/include/llvm/IR/IntrinsicInst.h >>> llvm/trunk/include/llvm/IR/Intrinsics.td >>> llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp >>> llvm/trunk/lib/IR/AutoUpgrade.cpp >>> llvm/trunk/lib/IR/IRBuilder.cpp >>> llvm/trunk/lib/IR/Verifier.cpp >>> llvm/trunk/lib/Target/AArch64/AArch64FastISel.cpp >>> llvm/trunk/lib/Target/ARM/ARMFastISel.cpp >>> llvm/trunk/lib/Target/Mips/MipsFastISel.cpp >>> llvm/trunk/lib/Target/X86/X86FastISel.cpp >>> llvm/trunk/lib/Transforms/InstCombine/InstCombineCalls.cpp >>> llvm/trunk/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp >>> llvm/trunk/test/Analysis/AliasSet/memtransfer.ll >>> llvm/trunk/test/Analysis/BasicAA/assume.ll >>> llvm/trunk/test/Analysis/BasicAA/cs-cs.ll >>> llvm/trunk/test/Analysis/BasicAA/gep-and-alias.ll >>> llvm/trunk/test/Analysis/BasicAA/getmodrefinfo-cs-cs.ll >>> llvm/trunk/test/Analysis/BasicAA/guards.ll >>> llvm/trunk/test/Analysis/BasicAA/modref.ll >>> llvm/trunk/test/Analysis/CallGraph/no-intrinsics.ll >>> llvm/trunk/test/Analysis/ConstantFolding/gep-constanfolding-error.ll >>> llvm/trunk/test/Analysis/DependenceAnalysis/Preliminary.ll >>> llvm/trunk/test/Analysis/GlobalsModRef/memset-escape.ll >>> llvm/trunk/test/Analysis/GlobalsModRef/no-escape.ll >>> llvm/trunk/test/Analysis/GlobalsModRef/pr12351.ll >>> llvm/trunk/test/Analysis/GlobalsModRef/volatile-instrs.ll >>> llvm/trunk/test/Analysis/Lint/noalias-byval.ll >>> llvm/trunk/test/Analysis/MemorySSA/basicaa-memcpy.ll >>> llvm/trunk/test/Analysis/ScalarEvolution/avoid-smax-1.ll >>> llvm/trunk/test/Analysis/ScalarEvolution/trip-count.ll >>> llvm/trunk/test/Analysis/ScalarEvolution/trip-count3.ll >>> llvm/trunk/test/Analysis/TypeBasedAliasAnalysis/functionattrs.ll >>> llvm/trunk/test/Analysis/TypeBasedAliasAnalysis/memcpyopt.ll >>> llvm/trunk/test/Bitcode/standardCIntrinsic.3.2.ll >>> llvm/trunk/test/Bitcode/upgrade-memory-intrinsics.ll >>> llvm/trunk/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll >>> llvm/trunk/test/CodeGen/AArch64/PBQP-csr.ll >>> llvm/trunk/test/CodeGen/AArch64/aarch64-DAGCombine-findBette >>> rNeighborChains-crash.ll >>> llvm/trunk/test/CodeGen/AArch64/arm64-2012-05-07-MemcpyAlignBug.ll >>> llvm/trunk/test/CodeGen/AArch64/arm64-abi-varargs.ll >>> llvm/trunk/test/CodeGen/AArch64/arm64-abi_align.ll >>> llvm/trunk/test/CodeGen/AArch64/arm64-fast-isel-intrinsic.ll >>> llvm/trunk/test/CodeGen/AArch64/arm64-memcpy-inline.ll >>> llvm/trunk/test/CodeGen/AArch64/arm64-memset-inline.ll >>> llvm/trunk/test/CodeGen/AArch64/arm64-memset-to-bzero.ll >>> llvm/trunk/test/CodeGen/AArch64/arm64-misaligned-memcpy-inline.ll >>> llvm/trunk/test/CodeGen/AArch64/arm64-misched-basic-A53.ll >>> llvm/trunk/test/CodeGen/AArch64/arm64-misched-basic-A57.ll >>> llvm/trunk/test/CodeGen/AArch64/arm64-stur.ll >>> llvm/trunk/test/CodeGen/AArch64/arm64-virtual_base.ll >>> llvm/trunk/test/CodeGen/AArch64/fast-isel-memcpy.ll >>> llvm/trunk/test/CodeGen/AArch64/func-argpassing.ll >>> llvm/trunk/test/CodeGen/AArch64/ldp-stp-scaled-unscaled-pairs.ll >>> llvm/trunk/test/CodeGen/AArch64/ldst-paired-aliasing.ll >>> llvm/trunk/test/CodeGen/AArch64/ldst-zero.ll >>> llvm/trunk/test/CodeGen/AArch64/machine-combiner-madd.ll >>> llvm/trunk/test/CodeGen/AArch64/memcpy-f128.ll >>> llvm/trunk/test/CodeGen/AArch64/merge-store-dependency.ll >>> llvm/trunk/test/CodeGen/AArch64/mergestores_noimplicitfloat.ll >>> llvm/trunk/test/CodeGen/AArch64/misched-stp.ll >>> llvm/trunk/test/CodeGen/AArch64/pr33172.ll >>> llvm/trunk/test/CodeGen/AArch64/tailcall-mem-intrinsics.ll >>> llvm/trunk/test/CodeGen/AArch64/tailcall-string-rvo.ll >>> llvm/trunk/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll >>> llvm/trunk/test/CodeGen/AMDGPU/lds-alignment.ll >>> llvm/trunk/test/CodeGen/AMDGPU/llvm.memcpy.ll >>> llvm/trunk/test/CodeGen/AMDGPU/lower-mem-intrinsics.ll >>> llvm/trunk/test/CodeGen/AMDGPU/promote-alloca-mem-intrinsics.ll >>> llvm/trunk/test/CodeGen/AMDGPU/stack-size-overflow.ll >>> llvm/trunk/test/CodeGen/ARM/2009-03-07-SpillerBug.ll >>> llvm/trunk/test/CodeGen/ARM/2011-03-10-DAGCombineCrash.ll >>> llvm/trunk/test/CodeGen/ARM/2011-10-26-memset-inline.ll >>> llvm/trunk/test/CodeGen/ARM/2011-10-26-memset-with-neon.ll >>> llvm/trunk/test/CodeGen/ARM/2012-04-24-SplitEHCriticalEdge.ll >>> llvm/trunk/test/CodeGen/ARM/Windows/memset.ll >>> llvm/trunk/test/CodeGen/ARM/Windows/no-aeabi.ll >>> llvm/trunk/test/CodeGen/ARM/arm-eabi.ll >>> llvm/trunk/test/CodeGen/ARM/constantpool-promote-ldrh.ll >>> llvm/trunk/test/CodeGen/ARM/constantpool-promote.ll >>> llvm/trunk/test/CodeGen/ARM/crash-O0.ll >>> llvm/trunk/test/CodeGen/ARM/debug-info-blocks.ll >>> llvm/trunk/test/CodeGen/ARM/dyn-stackalloc.ll >>> llvm/trunk/test/CodeGen/ARM/fast-isel-intrinsic.ll >>> llvm/trunk/test/CodeGen/ARM/interval-update-remat.ll >>> llvm/trunk/test/CodeGen/ARM/ldm-stm-base-materialization.ll >>> llvm/trunk/test/CodeGen/ARM/machine-cse-cmp.ll >>> llvm/trunk/test/CodeGen/ARM/memcpy-inline.ll >>> llvm/trunk/test/CodeGen/ARM/memcpy-ldm-stm.ll >>> llvm/trunk/test/CodeGen/ARM/memcpy-no-inline.ll >>> llvm/trunk/test/CodeGen/ARM/memfunc.ll >>> llvm/trunk/test/CodeGen/ARM/memset-inline.ll >>> llvm/trunk/test/CodeGen/ARM/stack-protector-bmovpcb_call.ll >>> llvm/trunk/test/CodeGen/ARM/struct-byval-frame-index.ll >>> llvm/trunk/test/CodeGen/ARM/tailcall-mem-intrinsics.ll >>> llvm/trunk/test/CodeGen/AVR/std-ldd-immediate-overflow.ll >>> llvm/trunk/test/CodeGen/BPF/byval.ll >>> llvm/trunk/test/CodeGen/BPF/ex1.ll >>> llvm/trunk/test/CodeGen/BPF/fi_ri.ll >>> llvm/trunk/test/CodeGen/BPF/reloc.ll >>> llvm/trunk/test/CodeGen/BPF/rodata_1.ll >>> llvm/trunk/test/CodeGen/BPF/rodata_2.ll >>> llvm/trunk/test/CodeGen/BPF/rodata_3.ll >>> llvm/trunk/test/CodeGen/BPF/rodata_4.ll >>> llvm/trunk/test/CodeGen/BPF/sanity.ll >>> llvm/trunk/test/CodeGen/BPF/undef.ll >>> llvm/trunk/test/CodeGen/BPF/warn-call.ll >>> llvm/trunk/test/CodeGen/Generic/ForceStackAlign.ll >>> llvm/trunk/test/CodeGen/Generic/invalid-memcpy.ll >>> llvm/trunk/test/CodeGen/Hexagon/adjust-latency-stackST.ll >>> llvm/trunk/test/CodeGen/Hexagon/branchfolder-keep-impdef.ll >>> llvm/trunk/test/CodeGen/Hexagon/early-if-conversion-bug1.ll >>> llvm/trunk/test/CodeGen/Hexagon/mem-fi-add.ll >>> llvm/trunk/test/CodeGen/Hexagon/memcpy-likely-aligned.ll >>> llvm/trunk/test/CodeGen/Hexagon/rdf-filter-defs.ll >>> llvm/trunk/test/CodeGen/Hexagon/store-imm-stack-object.ll >>> llvm/trunk/test/CodeGen/Hexagon/tail-call-mem-intrinsics.ll >>> llvm/trunk/test/CodeGen/MSP430/memset.ll >>> llvm/trunk/test/CodeGen/Mips/2012-12-12-ExpandMemcpy.ll >>> llvm/trunk/test/CodeGen/Mips/Fast-ISel/memtest1.ll >>> llvm/trunk/test/CodeGen/Mips/biggot.ll >>> llvm/trunk/test/CodeGen/Mips/cconv/arguments-small-structure >>> s-bigger-than-32bits.ll >>> llvm/trunk/test/CodeGen/Mips/cconv/arguments-varargs-small-s >>> tructs-byte.ll >>> llvm/trunk/test/CodeGen/Mips/cconv/arguments-varargs-small-s >>> tructs-combinations.ll >>> llvm/trunk/test/CodeGen/Mips/cconv/return-struct.ll >>> llvm/trunk/test/CodeGen/Mips/largeimmprinting.ll >>> llvm/trunk/test/CodeGen/Mips/long-calls.ll >>> llvm/trunk/test/CodeGen/Mips/memcpy.ll >>> llvm/trunk/test/CodeGen/Mips/pr33978.ll >>> llvm/trunk/test/CodeGen/Mips/tailcall/tailcall.ll >>> llvm/trunk/test/CodeGen/NVPTX/lower-aggr-copies.ll >>> llvm/trunk/test/CodeGen/PowerPC/2011-12-05-NoSpillDupCR.ll >>> llvm/trunk/test/CodeGen/PowerPC/2011-12-06-SpillAndRestoreCR.ll >>> llvm/trunk/test/CodeGen/PowerPC/MMO-flags-assertion.ll >>> llvm/trunk/test/CodeGen/PowerPC/aantidep-inline-asm-use.ll >>> llvm/trunk/test/CodeGen/PowerPC/ctrloop-reg.ll >>> llvm/trunk/test/CodeGen/PowerPC/emptystruct.ll >>> llvm/trunk/test/CodeGen/PowerPC/fsl-e500mc.ll >>> llvm/trunk/test/CodeGen/PowerPC/fsl-e5500.ll >>> llvm/trunk/test/CodeGen/PowerPC/glob-comp-aa-crash.ll >>> llvm/trunk/test/CodeGen/PowerPC/isel-rc-nox0.ll >>> llvm/trunk/test/CodeGen/PowerPC/licm-remat.ll >>> llvm/trunk/test/CodeGen/PowerPC/lxv-aligned-stack-slots.ll >>> llvm/trunk/test/CodeGen/PowerPC/memcpy-vec.ll >>> llvm/trunk/test/CodeGen/PowerPC/memcpy_dereferenceable.ll >>> llvm/trunk/test/CodeGen/PowerPC/memset-nc-le.ll >>> llvm/trunk/test/CodeGen/PowerPC/memset-nc.ll >>> llvm/trunk/test/CodeGen/PowerPC/merge-st-chain-op.ll >>> llvm/trunk/test/CodeGen/PowerPC/ppc-empty-fs.ll >>> llvm/trunk/test/CodeGen/PowerPC/pr27350.ll >>> llvm/trunk/test/CodeGen/PowerPC/resolvefi-basereg.ll >>> llvm/trunk/test/CodeGen/PowerPC/resolvefi-disp.ll >>> llvm/trunk/test/CodeGen/PowerPC/structsinmem.ll >>> llvm/trunk/test/CodeGen/PowerPC/structsinregs.ll >>> llvm/trunk/test/CodeGen/PowerPC/stwu8.ll >>> llvm/trunk/test/CodeGen/PowerPC/tailcall-string-rvo.ll >>> llvm/trunk/test/CodeGen/PowerPC/toc-load-sched-bug.ll >>> llvm/trunk/test/CodeGen/RISCV/frame.ll >>> llvm/trunk/test/CodeGen/SystemZ/dag-combine-02.ll >>> llvm/trunk/test/CodeGen/SystemZ/loop-01.ll >>> llvm/trunk/test/CodeGen/SystemZ/loop-03.ll >>> llvm/trunk/test/CodeGen/SystemZ/memcpy-01.ll >>> llvm/trunk/test/CodeGen/SystemZ/memset-01.ll >>> llvm/trunk/test/CodeGen/SystemZ/memset-02.ll >>> llvm/trunk/test/CodeGen/SystemZ/memset-03.ll >>> llvm/trunk/test/CodeGen/SystemZ/memset-04.ll >>> llvm/trunk/test/CodeGen/SystemZ/tail-call-mem-intrinsics.ll >>> llvm/trunk/test/CodeGen/Thumb/2011-05-11-DAGLegalizer.ll >>> llvm/trunk/test/CodeGen/Thumb/dyn-stackalloc.ll >>> llvm/trunk/test/CodeGen/Thumb/ldm-stm-base-materialization-thumb2.ll >>> llvm/trunk/test/CodeGen/Thumb/ldm-stm-base-materialization.ll >>> llvm/trunk/test/CodeGen/Thumb/stack-coloring-without-frame-ptr.ll >>> llvm/trunk/test/CodeGen/Thumb2/2009-08-04-SubregLoweringBug.ll >>> llvm/trunk/test/CodeGen/Thumb2/2012-01-13-CBNZBug.ll >>> llvm/trunk/test/CodeGen/WebAssembly/global.ll >>> llvm/trunk/test/CodeGen/WebAssembly/mem-intrinsics.ll >>> llvm/trunk/test/CodeGen/X86/2007-10-15-CoalescerCrash.ll >>> llvm/trunk/test/CodeGen/X86/2009-01-25-NoSSE.ll >>> llvm/trunk/test/CodeGen/X86/2009-11-16-UnfoldMemOpBug.ll >>> llvm/trunk/test/CodeGen/X86/2010-04-08-CoalescerBug.ll >>> llvm/trunk/test/CodeGen/X86/2010-04-21-CoalescerBug.ll >>> llvm/trunk/test/CodeGen/X86/2010-06-25-CoalescerSubRegDefDead.ll >>> llvm/trunk/test/CodeGen/X86/2010-09-17-SideEffectsInChain.ll >>> llvm/trunk/test/CodeGen/X86/2012-01-10-UndefExceptionEdge.ll >>> llvm/trunk/test/CodeGen/X86/alignment-2.ll >>> llvm/trunk/test/CodeGen/X86/bug26810.ll >>> llvm/trunk/test/CodeGen/X86/darwin-bzero.ll >>> llvm/trunk/test/CodeGen/X86/fast-isel-call.ll >>> llvm/trunk/test/CodeGen/X86/fast-isel-deadcode.ll >>> llvm/trunk/test/CodeGen/X86/fast-isel-x86-64.ll >>> llvm/trunk/test/CodeGen/X86/force-align-stack-alloca.ll >>> llvm/trunk/test/CodeGen/X86/immediate_merging.ll >>> llvm/trunk/test/CodeGen/X86/immediate_merging64.ll >>> llvm/trunk/test/CodeGen/X86/lea-opt-memop-check-1.ll >>> llvm/trunk/test/CodeGen/X86/load-slice.ll >>> llvm/trunk/test/CodeGen/X86/lsr-normalization.ll >>> llvm/trunk/test/CodeGen/X86/mcu-abi.ll >>> llvm/trunk/test/CodeGen/X86/mem-intrin-base-reg.ll >>> llvm/trunk/test/CodeGen/X86/memcpy-2.ll >>> llvm/trunk/test/CodeGen/X86/memcpy-from-string.ll >>> llvm/trunk/test/CodeGen/X86/memcpy.ll >>> llvm/trunk/test/CodeGen/X86/memset-2.ll >>> llvm/trunk/test/CodeGen/X86/memset-3.ll >>> llvm/trunk/test/CodeGen/X86/memset-nonzero.ll >>> llvm/trunk/test/CodeGen/X86/memset-sse-stack-realignment.ll >>> llvm/trunk/test/CodeGen/X86/memset.ll >>> llvm/trunk/test/CodeGen/X86/memset64-on-x86-32.ll >>> llvm/trunk/test/CodeGen/X86/misaligned-memset.ll >>> llvm/trunk/test/CodeGen/X86/misched-new.ll >>> llvm/trunk/test/CodeGen/X86/negate-add-zero.ll >>> llvm/trunk/test/CodeGen/X86/optimize-max-0.ll >>> llvm/trunk/test/CodeGen/X86/pr11985.ll >>> llvm/trunk/test/CodeGen/X86/pr14333.ll >>> llvm/trunk/test/CodeGen/X86/pr34088.ll >>> llvm/trunk/test/CodeGen/X86/ragreedy-hoist-spill.ll >>> llvm/trunk/test/CodeGen/X86/regparm.ll >>> llvm/trunk/test/CodeGen/X86/remat-fold-load.ll >>> llvm/trunk/test/CodeGen/X86/slow-unaligned-mem.ll >>> llvm/trunk/test/CodeGen/X86/small-byval-memcpy.ll >>> llvm/trunk/test/CodeGen/X86/stack-align.ll >>> llvm/trunk/test/CodeGen/X86/stack-protector.ll >>> llvm/trunk/test/CodeGen/X86/tail-dup-merge-loop-headers.ll >>> llvm/trunk/test/CodeGen/X86/tailcall-mem-intrinsics.ll >>> llvm/trunk/test/CodeGen/X86/tlv-1.ll >>> llvm/trunk/test/CodeGen/X86/unaligned-load.ll >>> llvm/trunk/test/CodeGen/X86/unused_stackslots.ll >>> llvm/trunk/test/CodeGen/X86/unwindraise.ll >>> llvm/trunk/test/CodeGen/X86/variable-sized-darwin-bzero.ll >>> llvm/trunk/test/CodeGen/X86/vectorcall.ll >>> llvm/trunk/test/CodeGen/X86/x86-64-static-relo-movl.ll >>> llvm/trunk/test/CodeGen/X86/x86-repmov-copy-eflags.ll >>> llvm/trunk/test/CodeGen/XCore/memcpy.ll >>> llvm/trunk/test/DebugInfo/AArch64/frameindices.ll >>> llvm/trunk/test/DebugInfo/COFF/types-array.ll >>> llvm/trunk/test/DebugInfo/Generic/2010-10-01-crash.ll >>> llvm/trunk/test/DebugInfo/X86/array.ll >>> llvm/trunk/test/DebugInfo/X86/array2.ll >>> llvm/trunk/test/DebugInfo/X86/debug-ranges-offset.ll >>> llvm/trunk/test/DebugInfo/X86/pieces-2.ll >>> llvm/trunk/test/DebugInfo/X86/pieces-3.ll >>> llvm/trunk/test/DebugInfo/X86/safestack-byval.ll >>> llvm/trunk/test/DebugInfo/X86/split-dwarf-cross-unit-reference.ll >>> llvm/trunk/test/DebugInfo/X86/sroasplit-1.ll >>> llvm/trunk/test/DebugInfo/X86/sroasplit-2.ll >>> llvm/trunk/test/DebugInfo/X86/sroasplit-4.ll >>> llvm/trunk/test/DebugInfo/X86/sroasplit-5.ll >>> llvm/trunk/test/DebugInfo/X86/sroasplit-dbg-declare.ll >>> llvm/trunk/test/Instrumentation/AddressSanitizer/basic.ll >>> llvm/trunk/test/Instrumentation/AddressSanitizer/stack-poiso >>> ning-byval-args.ll >>> llvm/trunk/test/Instrumentation/DataFlowSanitizer/memset.ll >>> (145 more files...) >>> >>> >>> >>> _______________________________________________ >>> llvm-commits mailing list >>> llvm-commits at lists.llvm.org >>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits >>> >> >> >> >> -- >> *Alexandre Isoard* >> <memcopy.sed>_______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >> >> >> > > > -- > *Alexandre Isoard* > > >-- *Alexandre Isoard* -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20180124/4de1e4c1/attachment.html>
Maybe Matching Threads
- [PATCH] D41675: Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1)
- [PATCH] D41675: Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1)
- [PATCH] D41675: Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1)
- [PATCH] D41675: Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1)
- [PATCH] D41675: Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1)