Page MenuHomePhabricator

Introduce a generic memset to bzero transformation in CodeGen
Needs ReviewPublic

Authored by gchatelet on Oct 31 2019, 9:21 AM.

Details

Reviewers
courbet
Summary

This is WIP and superseding D69623

Diff Detail

Unit TestsFailed

TimeTest
60 mslinux > Clang.CodeGen::Unknown Unit Message ("")
Script: -- : 'RUN: at line 3'; /mnt/disks/ssd0/agent/llvm-project/build/bin/clang -cc1 -internal-isystem /mnt/disks/ssd0/agent/llvm-project/build/lib/clang/12.0.0/include -nostdsysteminc -triple x86_64-linux-gnu -O1 -S -o - /mnt/disks/ssd0/agent/llvm-project/clang/test/CodeGen/nobuiltin.c | /mnt/disks/ssd0/agent/llvm-project/build/bin/FileCheck -check-prefix=STRCPY -check-prefix=MEMSET /mnt/disks/ssd0/agent/llvm-project/clang/test/CodeGen/nobuiltin.c
50 mslinux > LLVM.CodeGen/AArch64::Unknown Unit Message ("")
Script: -- : 'RUN: at line 1'; /mnt/disks/ssd0/agent/llvm-project/build/bin/llc /mnt/disks/ssd0/agent/llvm-project/llvm/test/CodeGen/AArch64/arm64-memset-to-bzero-pgso.ll -enable-machine-outliner=never -mtriple=arm64-linux-gnu -o - | /mnt/disks/ssd0/agent/llvm-project/build/bin/FileCheck --check-prefixes=CHECK,CHECK-LINUX /mnt/disks/ssd0/agent/llvm-project/llvm/test/CodeGen/AArch64/arm64-memset-to-bzero-pgso.ll
80 mslinux > LLVM.CodeGen/AArch64::Unknown Unit Message ("")
Script: -- : 'RUN: at line 1'; /mnt/disks/ssd0/agent/llvm-project/build/bin/llc /mnt/disks/ssd0/agent/llvm-project/llvm/test/CodeGen/AArch64/arm64-memset-to-bzero.ll -enable-machine-outliner=never -mtriple=arm64-apple-darwin -o - | /mnt/disks/ssd0/agent/llvm-project/build/bin/FileCheck --check-prefixes=CHECK,CHECK-DARWIN /mnt/disks/ssd0/agent/llvm-project/llvm/test/CodeGen/AArch64/arm64-memset-to-bzero.ll
40 mslinux > LLVM.CodeGen/Mips::Unknown Unit Message ("")
Script: -- : 'RUN: at line 1'; /mnt/disks/ssd0/agent/llvm-project/build/bin/llc -mtriple=mips-mti-linux-gnu -mcpu=mips32r2 -mattr=+micromips -stop-after=finalize-isel < /mnt/disks/ssd0/agent/llvm-project/llvm/test/CodeGen/Mips/micromips-target-external-symbol-reloc.ll | /mnt/disks/ssd0/agent/llvm-project/build/bin/FileCheck --check-prefix=MM2 /mnt/disks/ssd0/agent/llvm-project/llvm/test/CodeGen/Mips/micromips-target-external-symbol-reloc.ll
50 mslinux > LLVM.CodeGen/Mips/indirect-jump-hazard::Unknown Unit Message ("")
Script: -- : 'RUN: at line 2'; /mnt/disks/ssd0/agent/llvm-project/build/bin/llc -mtriple=mips-unknwon-linux-gnu -mcpu=mips32r2 -mattr=+use-indirect-jump-hazard,+long-calls,+noabicalls /mnt/disks/ssd0/agent/llvm-project/llvm/test/CodeGen/Mips/indirect-jump-hazard/long-calls.ll -o - -verify-machineinstrs | /mnt/disks/ssd0/agent/llvm-project/build/bin/FileCheck -check-prefix=O32 /mnt/disks/ssd0/agent/llvm-project/llvm/test/CodeGen/Mips/indirect-jump-hazard/long-calls.ll
View Full Test Results (19 Failed)

Event Timeline

gchatelet created this revision.Oct 31 2019, 9:21 AM
Herald added a project: Restricted Project. · View Herald TranscriptOct 31 2019, 9:21 AM
resistor added inline comments.
llvm/lib/Analysis/TargetLibraryInfo.cpp
56–58

This name reads like it refers to functions that were added in 2001, not to functions that were removed after 2001.

llvm/test/CodeGen/AArch64/arm64-memset-to-bzero.ll
11 ↗(On Diff #227294)

Can you remove these unrelated changes?

gchatelet updated this revision to Diff 281056.Jul 27 2020, 2:30 PM

rebase and revert unrelated changes.

gchatelet marked an inline comment as done.Jul 27 2020, 2:30 PM

A bunch of tests are still failing

LLVM :: CodeGen/AArch64/arm64-memset-to-bzero-pgso.ll
LLVM :: CodeGen/AArch64/arm64-memset-to-bzero.ll
LLVM :: CodeGen/Mips/indirect-jump-hazard/long-calls.ll
LLVM :: CodeGen/Mips/micromips-target-external-symbol-reloc.ll
LLVM :: CodeGen/X86/force-align-stack-alloca.ll
LLVM :: CodeGen/X86/pr36865.ll
LLVM :: CodeGen/X86/stack-clash-unknown-call.ll
LLVM :: Transforms/InferFunctionAttrs/annotate.ll