Skip to content

Commit

Permalink
Revert "Make global aliases have symbol size equal to their type"
Browse files Browse the repository at this point in the history
This reverts r242520, as it caused pr24379. Also removes part of the test added
by r243874 that checks the size of alias symbols.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@244313 91177308-0d34-0410-b5e6-96231b3b80d8
  • Loading branch information
john-brawn-arm committed Aug 7, 2015
1 parent 34620e3 commit bb8d0fb
Show file tree
Hide file tree
Showing 5 changed files with 0 additions and 37 deletions.
10 changes: 0 additions & 10 deletions lib/CodeGen/AsmPrinter/AsmPrinter.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1184,16 +1184,6 @@ bool AsmPrinter::doFinalization(Module &M) {

// Emit the directives as assignments aka .set:
OutStreamer->EmitAssignment(Name, lowerConstant(Alias.getAliasee()));

// Set the size of the alias symbol if we can, as otherwise the alias gets
// the size of the aliasee which may not be correct e.g. if the alias is of
// a member of a struct.
if (MAI->hasDotTypeDotSizeDirective() && Alias.getValueType()->isSized()) {
const DataLayout &DL = M.getDataLayout();
uint64_t Size = DL.getTypeAllocSize(Alias.getValueType());
OutStreamer->emitELFSize(cast<MCSymbolELF>(Name),
MCConstantExpr::create(Size, OutContext));
}
}

GCModuleInfo *MI = getAnalysisIfAvailable<GCModuleInfo>();
Expand Down
3 changes: 0 additions & 3 deletions test/CodeGen/AArch64/global-merge-2.ll
Original file line number Diff line number Diff line change
Expand Up @@ -35,13 +35,10 @@ define void @g1(i32 %a1, i32 %a2) {

;CHECK: .globl x
;CHECK: x = _MergedGlobals_x
;CHECK: .size x, 4
;CHECK: .globl y
;CHECK: y = _MergedGlobals_x+4
;CHECK: .size y, 4
;CHECK: .globl z
;CHECK: z = _MergedGlobals_x+8
;CHECK: .size z, 4

;CHECK-APPLE-IOS: .globl __MergedGlobals_x ; @_MergedGlobals_x
;CHECK-APPLE-IOS: .zerofill __DATA,__common,__MergedGlobals_x,12,3
Expand Down
2 changes: 0 additions & 2 deletions test/CodeGen/AArch64/global-merge-3.ll
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,8 @@ define void @f1(i32 %a1, i32 %a2, i32 %a3) {

;CHECK: .globl x
;CHECK: x = _MergedGlobals_x+4
;CHECK: .size x, 4000
;CHECK: .globl y
;CHECK: y = _MergedGlobals_y
;CHECK: .size y, 4000

;CHECK-APPLE-IOS:.globl _x
;CHECK-APPLE-IOS: _x = __MergedGlobals_x+4
Expand Down
19 changes: 0 additions & 19 deletions test/CodeGen/ARM/aliases.ll
Original file line number Diff line number Diff line change
Expand Up @@ -2,34 +2,19 @@

; CHECK: .globl test

; CHECK: .globl structvar
; CHECK: .size structvar, 8

; CHECK: .globl foo1
; CHECK: foo1 = bar
; CHECK: .size foo1, 4

; CHECK: .globl foo2
; CHECK: foo2 = bar
; CHECK: .size foo2, 4

; CHECK: .weak bar_f
; CHECK: bar_f = foo_f

; CHECK: bar_i = bar
; CHECK: .size bar_i, 4

; CHECK: .globl A
; CHECK: A = bar
; CHECK: .size A, 8

; CHECK: .globl elem0
; CHECK: elem0 = structvar
; CHECK: .size elem0, 4

; CHECK: .globl elem1
; CHECK: elem1 = structvar+4
; CHECK: .size elem1, 4

@bar = global i32 42
@foo1 = alias i32* @bar
Expand All @@ -46,10 +31,6 @@ define i32 @foo_f() {

@A = alias bitcast (i32* @bar to i64*)

@structvar = global {i32, i32} {i32 1, i32 2}
@elem0 = alias getelementptr({i32, i32}, {i32, i32}* @structvar, i32 0, i32 0)
@elem1 = alias getelementptr({i32, i32}, {i32, i32}* @structvar, i32 0, i32 1)

define i32 @test() {
entry:
%tmp = load i32, i32* @foo1
Expand Down
3 changes: 0 additions & 3 deletions test/CodeGen/ARM/global-merge-external.ll
Original file line number Diff line number Diff line change
Expand Up @@ -39,10 +39,7 @@ define void @g1(i32 %a1, i32 %a2) {

;CHECK-MERGE: .globl x
;CHECK-MERGE: x = _MergedGlobals_x
;CHECK-MERGE: .size x, 4
;CHECK-MERGE: .globl y
;CHECK-MERGE: y = _MergedGlobals_x+4
;CHECK-MERGE: .size y, 4
;CHECK-MERGE: .globl z
;CHECK-MERGE: z = _MergedGlobals_x+8
;CHECK-MERGE: .size z, 4

0 comments on commit bb8d0fb

Please sign in to comment.