8000 [llvm17] Error: unimplemented intrinsic · Issue #1754 · klee/klee · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
[llvm17] Error: unimplemented intrinsic #1754
Open
@jirislaby

Description

@jirislaby

After I switched from llvm 16 to llvm 17, I see a lot of errors in tests:

 # command stderr: 
 KLEE: NOTE: Using POSIX model: /home/abuild/rpmbuild/BUILD/klee-3.1+20241105/build/runtime/lib/libkleeRuntimePOSIX64_Debug+Asserts.bca
 KLEE: NOTE: Using klee-uclibc : /home/abuild/rpmbuild/BUILD/klee-3.1+20241105/build/runtime/lib/klee-uclibc.bca
 KLEE: output directory is "/home/abuild/rpmbuild/BUILD/klee-3.1+20241105/build/test/Runtime/POSIX/Output/DirConsistency.c.tmp.klee-out"
 KLEE: Using STP solver backend 
 KLEE: SAT solver: MiniSat 
 KLEE: Deterministic allocator: Using quarantine queue size 8
 KLEE: Deterministic allocator: globals (start-address=0x7f6258557000 size=10 GiB)
 KLEE: Deterministic allocator: constants (start-address=0x7f5fd8557000 size=10 GiB)
 KLEE: Deterministic allocator: heap (start-address=0x7e5fd8557000 size=1024 GiB)
 KLEE: Deterministic allocator: stack (start-address=0x7e3fd8557000 size=128 GiB)
 KLEE: WARNING ONCE: calling external: syscall(16, 0, 21505, 138857774673920) at runtime/POSIX/fd.c:997 10
 KLEE: WARNING: unimplemented intrinsic: llvm.memcpy.p0.p0.i64
 KLEE: ERROR: runtime/POSIX/klee_init_env.c:96: unimplemented intrinsic
 KLEE: NOTE: now ignoring this error at this location
 KLEE: ERROR: EXITING ON ERROR:
 Error: unimplemented intrinsic
 File: runtime/POSIX/klee_init_env.c
 Line: 96
 assembly.ll line: 6317
 State: 1
 Stack:  
        #000006317 in klee_init_env(138822341193728, 138831467999232) at runtime/POSIX/klee_init_env.c:96
        #100007239 in __user_main(4, 140067344838656, 140067344838696) at runtime/POSIX/klee_init_env.c:244
        #200000533 in __uClibc_main(140052572499968, 4, 140067344838656, 0, 0, 0, 0) at libc/misc/internals/__uClibc_main.c:401
        #300000698 in main(4, 140067344838656)
 
  error: command failed with exit status: 1
...
     KLEE :: Runtime/POSIX/DirConsistency.c
...
  Unexpected Failures: 92

assembly.ll spells this on the failing line:

  call void @llvm.memcpy.p0.p0.i64(ptr align 1 %20, ptr align 1 @__const.klee_init_env.sym_arg_name, i64 6, i1 false), !dbg !5670

This I see when I grep for unimplemented (I don't know which are new with llvm 17):

KLEE: WARNING: unimplemented intrinsic: llvm.assume
KLEE: WARNING: unimplemented intrinsic: llvm.cttz.i32
KLEE: WARNING: unimplemented intrinsic: llvm.is.constant.i32
KLEE: WARNING: unimplemented intrinsic: llvm.lifetime.start.p0
KLEE: WARNING: unimplemented intrinsic: llvm.memcpy.p0.p0.i64
KLEE: WARNING: unimplemented intrinsic: llvm.memset.p0.i64
KLEE: WARNING: unimplemented intrinsic: llvm.minnum.f32
KLEE: WARNING: unimplemented intrinsic: llvm.objectsize.i64.p0
KLEE: WARNING: unimplemented intrinsic: llvm.ptrmask.p0.i64
KLEE: WARNING: unimplemented intrinsic: llvm.sadd.with.overflow.i32
KLEE: WARNING: unimplemented intrinsic: llvm.smul.with.overflow.i64
KLEE: WARNING: unimplemented intrinsic: llvm.stacksave
KLEE: WARNING: unimplemented intrinsic: llvm.trap
KLEE: WARNING: unimplemented intrinsic: llvm.uadd.sat.i8
KLEE: WARNING: unimplemented intrinsic: llvm.uadd.with.overflow.i32
KLEE: WARNING: unimplemented intrinsic: llvm.uadd.with.overflow.i8
KLEE: WARNING: unimplemented intrinsic: llvm.umul.with.overflow.i32
KLEE: WARNING: unimplemented intrinsic: llvm.umul.with.overflow.i8

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0