tc-ppc.c (78828) | tc-ppc.c (80016) |
---|---|
1/* tc-ppc.c -- Assemble for the PowerPC or POWER (RS/6000) 2 Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 3 Free Software Foundation, Inc. 4 Written by Ian Lance Taylor, Cygnus Support. 5 6 This file is part of GAS, the GNU Assembler. 7 8 GAS is free software; you can redistribute it and/or modify --- 2326 unchanged lines hidden (view full) --- 2335/* XCOFF specific pseudo-op handling. */ 2336 2337/* This is set if we are creating a .stabx symbol, since we don't want 2338 to handle symbol suffixes for such symbols. */ 2339static boolean ppc_stab_symbol; 2340 2341/* The .comm and .lcomm pseudo-ops for XCOFF. XCOFF puts common 2342 symbols in the .bss segment as though they were local common | 1/* tc-ppc.c -- Assemble for the PowerPC or POWER (RS/6000) 2 Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 3 Free Software Foundation, Inc. 4 Written by Ian Lance Taylor, Cygnus Support. 5 6 This file is part of GAS, the GNU Assembler. 7 8 GAS is free software; you can redistribute it and/or modify --- 2326 unchanged lines hidden (view full) --- 2335/* XCOFF specific pseudo-op handling. */ 2336 2337/* This is set if we are creating a .stabx symbol, since we don't want 2338 to handle symbol suffixes for such symbols. */ 2339static boolean ppc_stab_symbol; 2340 2341/* The .comm and .lcomm pseudo-ops for XCOFF. XCOFF puts common 2342 symbols in the .bss segment as though they were local common |
2343 symbols, and uses a different smclas. */ | 2343 symbols, and uses a different smclas. The native Aix 4.3.3 assember 2344 aligns .comm and .lcomm to 4 bytes. */ |
2344 2345static void 2346ppc_comm (lcomm) 2347 int lcomm; 2348{ 2349 asection *current_seg = now_seg; 2350 subsegT current_subseg = now_subseg; 2351 char *name; --- 25 unchanged lines hidden (view full) --- 2377 ignore_rest_of_line (); 2378 return; 2379 } 2380 2381 if (! lcomm) 2382 { 2383 /* The third argument to .comm is the alignment. */ 2384 if (*input_line_pointer != ',') | 2345 2346static void 2347ppc_comm (lcomm) 2348 int lcomm; 2349{ 2350 asection *current_seg = now_seg; 2351 subsegT current_subseg = now_subseg; 2352 char *name; --- 25 unchanged lines hidden (view full) --- 2378 ignore_rest_of_line (); 2379 return; 2380 } 2381 2382 if (! lcomm) 2383 { 2384 /* The third argument to .comm is the alignment. */ 2385 if (*input_line_pointer != ',') |
2385 align = 3; | 2386 align = 2; |
2386 else 2387 { 2388 ++input_line_pointer; 2389 align = get_absolute_expression (); 2390 if (align <= 0) 2391 { 2392 as_warn (_("ignoring bad alignment")); | 2387 else 2388 { 2389 ++input_line_pointer; 2390 align = get_absolute_expression (); 2391 if (align <= 0) 2392 { 2393 as_warn (_("ignoring bad alignment")); |
2393 align = 3; | 2394 align = 2; |
2394 } 2395 } 2396 } 2397 else 2398 { 2399 char *lcomm_name; 2400 char lcomm_endc; 2401 | 2395 } 2396 } 2397 } 2398 else 2399 { 2400 char *lcomm_name; 2401 char lcomm_endc; 2402 |
2402 if (size <= 1) 2403 align = 0; 2404 else if (size <= 2) 2405 align = 1; 2406 else if (size <= 4) | 2403 if (size <= 4) |
2407 align = 2; 2408 else 2409 align = 3; 2410 2411 /* The third argument to .lcomm appears to be the real local 2412 common symbol to create. References to the symbol named in 2413 the first argument are turned into references to the third 2414 argument. */ --- 2772 unchanged lines hidden --- | 2404 align = 2; 2405 else 2406 align = 3; 2407 2408 /* The third argument to .lcomm appears to be the real local 2409 common symbol to create. References to the symbol named in 2410 the first argument are turned into references to the third 2411 argument. */ --- 2772 unchanged lines hidden --- |