aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/8l/pass.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmd/8l/pass.c')
-rw-r--r--src/cmd/8l/pass.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/cmd/8l/pass.c b/src/cmd/8l/pass.c
index 82b2fb1f3d..01f04048b1 100644
--- a/src/cmd/8l/pass.c
+++ b/src/cmd/8l/pass.c
@@ -294,16 +294,18 @@ loop:
if(a != ACALL) {
q = brchain(p->link);
if(q != P && q->mark)
- if(a != ALOOP) {
+ if(a != ALOOP && a != ATEXT) {
p->as = relinv(a);
p->link = p->pcond;
p->pcond = q;
}
xfol(p->link);
- q = brchain(p->pcond);
- if(q->mark) {
- p->pcond = q;
- return;
+ if(a != ATEXT) {
+ q = brchain(p->pcond);
+ if(q->mark) {
+ p->pcond = q;
+ return;
+ }
}
p = q;
goto loop;