search for: arraydecay1

Displaying 7 results from an estimated 7 matches for "arraydecay1".

Did you mean: arraydecay
2015 Sep 28
4
varargs, the x86, and clang
..._arg(ap, int); va_end(ap); return sum; } I see LLVM that looks like it's been customized for the x86-64, versus the varargs stuff I was led to expect from the LLVM IR documentation. define i32 @add_em_up(i32 %count, ...) #0 { entry: %ap = alloca [1 x %struct.__va_list_tag], align 16 %arraydecay1 = bitcast [1 x %struct.__va_list_tag]* %ap to i8* call void @llvm.va_start(i8* %arraydecay1) %cmp7 = icmp sgt i32 %count, 0 br i1 %cmp7, label %for.body.lr.ph, label %for.end for.body.lr.ph: ; preds = %entry %gp_offset_p = getelementptr inbounds [1 x %stru...
2014 Apr 11
2
[LLVMdev] llvm cse optimization
...the following llvm IR, @ng0 = internal global [2 x i32] [i32 2, i32 0], align 4 %t7 = alloca [16 x i8], align 16 %add.ptr = getelementptr inbounds i8* %t1, i64 40 %call = call i8* @handle_value(i8* %add.ptr, i32 3) #3 %arraydecay = getelementptr inbounds [8 x i8]* %t3, i64 0, i64 0 %arraydecay1 = getelementptr inbounds [16 x i8]* %t4, i64 0, i64 0 call void @select_value(i8* %arraydecay, i32 1, i32 1, i8* %call, i8* %arraydecay1, i8* null, i32 1, i32 2, i32 1, i8* bitcast ([2 x i32]* @ng0 to i8*), i32 32, i32 1) #3 %call3 = call i8* @handle_value(i8* %add.ptr, i32 3) #3 ; Function At...
2013 Dec 05
0
[LLVMdev] Help with replacing instructions via function pass
Hi, In my IR code, I have the following: %arr = alloca [30 x i8], align 1 %arraydecay = getelementptr inbounds [16 x i8]* %arr, i32 0, i32 0 %arraydecay1 = getelementptr inbounds [16 x i8]* %arr, i32 0, i32 0 I'm trying to change the capacity of arr via a function pass. I've written the following code in my function pass: ArrayType* b = ArrayType::get(IntegerType::get(getGlobalContext(), 8), 10); AllocaInst* pa = new AllocaInst(b, "ar...
2019 Feb 07
2
RFC: [DebugInfo] Improving Debug Information in LLVM to Recover Optimized-out Function Parameters
...ariable construction. For call-site information, new DINode metadata DICallSite and DICallSiteParam are defined and these are emitted by the Clang frontend. The metadata is associated to the call or invoke IR instruction. Here is an example: %call5 = call i32 @fed_em_strncmp(i8* %arraydecay, i8* %arraydecay1, i64 5), !dbg !114, !call_site !101 … !99 = !DICallSiteParam(argno: 1, variable: !91, expr: !DIExpression()) !100 = !DICallSiteParam(argno: 2, variable: !95, expr: !DIExpression()) !101 = !DICallSite(scope: !87, file: !3, parameters: !102, line: 40, calledSubprogram: !13) !102 = !{!99, !100, !103}...
2019 Feb 08
3
RFC: [DebugInfo] Improving Debug Information in LLVM to Recover Optimized-out Function Parameters
...> For call-site information, new DINode metadata DICallSite and DICallSiteParam are defined and these are emitted by the Clang frontend. The metadata is associated to the call or invoke IR instruction. Here is an example: > > %call5 = call i32 @fed_em_strncmp(i8* %arraydecay, i8* %arraydecay1, i64 5), !dbg !114, !call_site !101 > … > !99 = !DICallSiteParam(argno: 1, variable: !91, expr: !DIExpression()) > !100 = !DICallSiteParam(argno: 2, variable: !95, expr: !DIExpression()) > !101 = !DICallSite(scope: !87, file: !3, parameters: !102, line: 40, calledSubprog...
2014 Nov 03
8
[LLVMdev] [PATCH] Protection against stack-based memory corruption errors using SafeStack
...+; DARWIN-X64: .cfi_endproc + %a.addr = alloca i8*, align 8 + %buf = alloca [16 x i8], align 16 + store i8* %a, i8** %a.addr, align 8 + %arraydecay = getelementptr inbounds [16 x i8]* %buf, i32 0, i32 0 + %0 = load i8** %a.addr, align 8 + %call = call i8* @strcpy(i8* %arraydecay, i8* %0) + %arraydecay1 = getelementptr inbounds [16 x i8]* %buf, i32 0, i32 0 + %call2 = call i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([4 x i8]* @.str, i32 0, i32 0), i8* %arraydecay1) + ret void +} + +; test1b: array of [16 x i8] +; safestack attribute +; Requires protector. +define void @test1b(i8*...
2019 Feb 08
2
RFC: [DebugInfo] Improving Debug Information in LLVM to Recover Optimized-out Function Parameters
...etadata DICallSite and > DICallSiteParam are defined and these are emitted by the Clang frontend. > The metadata is associated to the call or invoke IR instruction. Here is > an example: > > > > %call5 = call i32 @fed_em_strncmp(i8* %arraydecay, i8* %arraydecay1, > i64 5), !dbg !114, !call_site !101 > > … > > !99 = !DICallSiteParam(argno: 1, variable: !91, expr: > !DIExpression()) > > !100 = !DICallSiteParam(argno: 2, variable: !95, expr: > !DIExpression()) > > !101 = !DICallSite(...