525fd36dd3
- impl splat, store32, which lets us handle the conceptually simplest program, a 32-bit memset. - dump bitcode to /tmp on success Kind of starting to look good! $ ninja -C out dm && out/dm -m SkVM_Pointless $ opt --O1 /tmp/skvm-jit-211960346.bc | llvm-dis ; Function Attrs: nofree norecurse nounwind writeonly define void @skvm-jit-211960346(i64, i8* nocapture) local_unnamed_addr #0 { enter: %2 = icmp ugt i64 %0, 7 br i1 %2, label %loopK, label %test1.preheader test1.preheader: ; preds = %loopK, %enter %.07.lcssa = phi i64 [ %0, %enter ], [ %5, %loopK ] %.0.lcssa = phi i8* [ %1, %enter ], [ %6, %loopK ] %3 = icmp eq i64 %.07.lcssa, 0 br i1 %3, label %leave, label %loop1 loopK: ; preds = %enter, %loopK %.012 = phi i8* [ %6, %loopK ], [ %1, %enter ] %.0711 = phi i64 [ %5, %loopK ], [ %0, %enter ] %4 = bitcast i8* %.012 to <8 x i32>* store <8 x i32> <i32 42, i32 42, i32 42, i32 42, i32 42, i32 42, i32 42, i32 42>, <8 x i32>* %4, align 1 %5 = add i64 %.0711, -8 %6 = getelementptr i8, i8* %.012, i64 32 %7 = icmp ugt i64 %5, 7 br i1 %7, label %loopK, label %test1.preheader loop1: ; preds = %test1.preheader, %loop1 %.110 = phi i8* [ %10, %loop1 ], [ %.0.lcssa, %test1.preheader ] %.189 = phi i64 [ %9, %loop1 ], [ %.07.lcssa, %test1.preheader ] %8 = bitcast i8* %.110 to i32* store i32 42, i32* %8, align 1 %9 = add i64 %.189, -1 %10 = getelementptr i8, i8* %.110, i64 4 %11 = icmp eq i64 %9, 0 br i1 %11, label %leave, label %loop1 leave: ; preds = %loop1, %test1.preheader ret void } attributes #0 = { nofree norecurse nounwind writeonly } Change-Id: I00953c1113739a9ee094cb6cb3c99f1b7f8de9bf Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273509 Reviewed-by: Herb Derby <herb@google.com> |
||
---|---|---|
animations | ||
bench | ||
bin | ||
build/fuchsia | ||
build_overrides | ||
dm | ||
docker | ||
docs/examples | ||
example | ||
experimental | ||
fuzz | ||
gm | ||
gn | ||
include | ||
infra | ||
modules | ||
platform_tools | ||
resources | ||
samplecode | ||
site | ||
specs | ||
src | ||
tests | ||
third_party | ||
tools | ||
.clang-format | ||
.clang-tidy | ||
.gitignore | ||
.gn | ||
AUTHORS | ||
BUILD.gn | ||
codereview.settings | ||
CONTRIBUTING | ||
CQ_COMMITTERS | ||
DEPS | ||
go.mod | ||
go.sum | ||
LICENSE | ||
OWNERS | ||
PRESUBMIT.py | ||
public.bzl | ||
README | ||
README.chromium | ||
RELEASE_NOTES.txt | ||
whitespace.txt |
Skia is a complete 2D graphic library for drawing Text, Geometries, and Images. See full details, and build instructions, at https://skia.org.