Please use GitHub pull requests for new patches. Avoid migrating existing patches. Phabricator shutdown timeline
Changeset View
Changeset View
Standalone View
Standalone View
lld/test/ELF/lto/wrap-1.ll
- This file was added.
; REQUIRES: x86 | |||||
; RUN: llvm-as %s -o %t.o | |||||
; RUN: ld.lld %t.o -o %t.out -wrap=bar -save-temps | |||||
; RUN: llvm-readobj -t %t.out | FileCheck %s | |||||
; RUN: cat %t.out.resolution.txt | FileCheck -check-prefix=RESOLS %s | |||||
; CHECK: Name: __wrap_bar | |||||
; CHECK-NEXT: Value: | |||||
; CHECK-NEXT: Size: | |||||
; CHECK-NEXT: Binding: Global | |||||
; CHECK-NEXT: Type: Function | |||||
; Make sure that the 'r' (linker redefined) bit is set for bar and __wrap_bar | |||||
; in the resolutions file. | |||||
pcc: Please update this comment. I think you also want to test `'r'` for __real_bar. | |||||
Not Done ReplyInline ActionsResolutions file is driven by input file symbol tables. Since __real_bar is not defined in an object, it does not show up there. I added a definition and a test for the 'r' flag. dmikulin: Resolutions file is driven by input file symbol tables. Since __real_bar is not defined in an… | |||||
; RESOLS: ,bar,r | |||||
; RESOLS: ,__wrap_bar,px | |||||
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" | |||||
target triple = "x86_64-unknown-linux-gnu" | |||||
declare void @bar() | |||||
define void @_start() { | |||||
call void @bar() | |||||
ret void | |||||
} | |||||
define void @__wrap_bar() { | |||||
ret void | |||||
} |
Please update this comment. I think you also want to test 'r' for __real_bar.