Skip to content

Instantly share code, notes, and snippets.

/home/shawn/git/llvm-project/llvm/include/llvm/ADT/PointerIntPair.h: In instantiation of ‘static PointerT llvm::PointerIntPairInfo<PointerT, IntBits, PtrTraits>::getPointer(intptr_t) [with PointerT = llvm::PointerIntPair<void*, 2, mlir::Value::Kind, mlir::Value::ImplTypeTraits>; unsigned int IntBits = 1; PtrTraits = llvm::PointerLikeTypeTraits<llvm::PointerIntPair<void*, 2, mlir::Value::Kind, mlir::Value::ImplTypeTraits> >; intptr_t = long int]’:
/home/shawn/git/llvm-project/llvm/include/llvm/ADT/PointerIntPair.h:59:57: required from ‘PointerTy llvm::PointerIntPair<PointerTy, IntBits, IntType, PtrTraits, Info>::getPointer() const [with PointerTy = llvm::PointerIntPair<void*, 2, mlir::Value::Kind, mlir::Value::ImplTypeTraits>; unsigned int IntBits = 1; IntType = mlir::Value::Comptime; PtrTraits = llvm::PointerLikeTypeTraits<llvm::PointerIntPair<void*, 2, mlir::Value::Kind, mlir::Value::ImplTypeTraits> >; Info = llvm::PointerIntPairInfo<llvm::PointerIntPair<void*, 2, mlir::Value::Kind, mlir::Value::ImplTypeTr
namespace mlir {
namespace toy {
/// This class adds forward constant propogation to mlir::Value
class EagerValue : public mlir::Value {
public:
/// The enumeration represents if generating this Value will cause any side-effects
/// that cannot be emulated at compile-time.
enum class Comptime {
Static = 0,
Runtime = 1,
shawn@flex:~/git/musl$ cat hello.c
#include <stdio.h>
int main() {
puts("Hello world!");
}
shawn@flex:~/git/musl$ musl-gcc hello.c -o hello -O3
shawn@flex:~/git/musl$ gdb ./hello
GNU gdb (Ubuntu 9.1-0ubuntu1) 9.1
Copyright (C) 2020 Free Software Foundation, Inc.
Program received signal SIGSEGV, Segmentation fault.
getContext () at /build/llvm-toolchain-10-yegZYJ/llvm-toolchain-10-10.0.0/llvm/lib/IR/Value.cpp:744
744 /build/llvm-toolchain-10-yegZYJ/llvm-toolchain-10-10.0.0/llvm/lib/IR/Value.cpp: No existe el archivo o el directorio.
(gdb) p LLVMDumpType(target_type)
No symbol "target_type" in current context.
(gdb) up
#1 setNameImpl () at /build/llvm-toolchain-10-yegZYJ/llvm-toolchain-10-10.0.0/llvm/lib/IR/Value.cpp:226
226 in /build/llvm-toolchain-10-yegZYJ/llvm-toolchain-10-10.0.0/llvm/lib/IR/Value.cpp
(gdb) up
#2 0x00007ffff43ffdc9 in llvm::Value::setName(llvm::Twine const&) () at /build/llvm-toolchain-10-yegZYJ/llvm-toolchain-10-10.0.0/llvm/lib/IR/Value.cpp:287
static LLVMValueRef ir_render_switch_br(CodeGen *g, IrExecutableGen *executable, IrInstGenSwitchBr *instruction) {
Error err;
ZigType *target_type = instruction->target_value->value->type;
LLVMBasicBlockRef else_block = instruction->else_block->llvm_block;
if ((err = type_resolve(g, target_type, ResolveStatusLLVMFull)))
codegen_report_errors_and_exit(g);
LLVMValueRef target_value = ir_llvm_value(g, instruction->target_value);
getContext () at /build/llvm-toolchain-10-yegZYJ/llvm-toolchain-10-10.0.0/llvm/lib/IR/Value.cpp:744
744 /build/llvm-toolchain-10-yegZYJ/llvm-toolchain-10-10.0.0/llvm/lib/IR/Value.cpp: No existe el archivo o el directorio.
(gdb) up
#1 setNameImpl () at /build/llvm-toolchain-10-yegZYJ/llvm-toolchain-10-10.0.0/llvm/lib/IR/Value.cpp:226
226 in /build/llvm-toolchain-10-yegZYJ/llvm-toolchain-10-10.0.0/llvm/lib/IR/Value.cpp
(gdb) up
#2 0x00007ffff43ffdc9 in llvm::Value::setName(llvm::Twine const&) () at /build/llvm-toolchain-10-yegZYJ/llvm-toolchain-10-10.0.0/llvm/lib/IR/Value.cpp:287
287 in /build/llvm-toolchain-10-yegZYJ/llvm-toolchain-10-10.0.0/llvm/lib/IR/Value.cpp
(gdb) up
#3 0x00007ffff430434d in ExtractValueInst () at /build/llvm-toolchain-10-yegZYJ/llvm-toolchain-10-10.0.0/llvm/include/llvm/IR/Instructions.h:2390
Breakpoint 1, main () at test.c:15
15 unsigned char H[128/8] = {
(gdb) c
Continuing.
Breakpoint 2, gcmHash_InitContext (ghash=0x7fffffffef90,
H=0x7fffffffef18 "\270;S7\b\277S]\n\246\345)\200\325;x\376\355\372\316ޭ\276\357\376\355\372\316ޭ\276\357\253\255\332", <incomplete sequence \322>, sw=1) at gcm.c:81
81 SECStatus rv = SECSuccess;
(gdb) n
83 ghash->cLen = 0;
==29571== Invalid read of size 1
==29571== at 0x180B50: ??? (in /home/shawn/git/bcmp/a.out)
==29571== by 0x180AA7: main (in /home/shawn/git/bcmp/a.out)
==29571== Address 0x4af0045 is 0 bytes after a block of size 5 alloc'd
==29571== at 0x48841F0: malloc (vg_replace_malloc.c:299)
==29571== by 0x18096F: bcmp_test (in /home/shawn/git/bcmp/a.out)
==29571== by 0x180AA7: main (in /home/shawn/git/bcmp/a.out)
==29571==
Foo to VeryVeryLongByteThing: 1
==29571== Invalid read of size 1
// This file is in a package which has the root source file exposed as "@root".
// It is included in the compilation unit when exporting an executable.
const root = @import("@root");
const std = @import("std");
const builtin = @import("builtin");
const assert = std.debug.assert;
var argc_ptr: [*]usize = undefined;
/* ===-- getsparse.c - Implement __getsparse and __getsparseinbound --------===
*
* Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
* See https://llvm.org/LICENSE.txt for license information.
* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
*
* ===----------------------------------------------------------------------===
*
* This file implements __getsparse and __getsparseinbound
* for the compiler_rt library.