diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2010-12-15 07:39:29 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2010-12-15 07:39:29 +0000 |
commit | f9a447617329186976fe5ab8b48fe3c9c0698bc7 (patch) | |
tree | 8865fd04a7018dd0c101d54457c23fb645166b26 /test | |
parent | 9448184b99b2bbdb9a2107ef12bf4cbff86e684f (diff) | |
download | llvm-f9a447617329186976fe5ab8b48fe3c9c0698bc7.tar.gz llvm-f9a447617329186976fe5ab8b48fe3c9c0698bc7.tar.bz2 llvm-f9a447617329186976fe5ab8b48fe3c9c0698bc7.tar.xz |
Patch by David Meyer to avoid a O(N^2) behaviour when relaxing fragments.
Since we now don't update addresses so early, we might relax a bit more than
we need to. This is simillar to the issue in PR8467.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121856 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r-- | test/MC/MachO/relax-recompute-align.s | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/test/MC/MachO/relax-recompute-align.s b/test/MC/MachO/relax-recompute-align.s index 249402502f..b9734cebf3 100644 --- a/test/MC/MachO/relax-recompute-align.s +++ b/test/MC/MachO/relax-recompute-align.s @@ -3,16 +3,16 @@ // FIXME: This is a horrible way of checking the output, we need an llvm-mc // based 'otool'. -// This is a case where llvm-mc computes a better layout than Darwin 'as'. This -// issue is that after the first jmp slides, the .align size must be -// recomputed -- otherwise the second jump will appear to be out-of-range for a -// 1-byte jump. +// FIXME: PR8467. +// There is an unnecessary relaxation here. After the first jmp slides, +// the .align size could be recomputed so that the second jump will be in range +// for a 1-byte jump. For performance reasons, this is not currently done. // CHECK: # Section 0 // CHECK: (('section_name', '__text\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00') // CHECK: ('segment_name', '__TEXT\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00') // CHECK: ('address', 0) -// CHECK: ('size', 306) +// CHECK: ('size', 322) // CHECK: ('offset', 324) // CHECK: ('alignment', 4) // CHECK: ('reloc_offset', 0) |