crtsavres.asm (96263) | crtsavres.asm (132718) |
---|---|
1/* 2 * Special support for eabi and SVR4 3 * 4 * Copyright (C) 1995, 1996, 1998, 2000, 2001 Free Software Foundation, Inc. 5 * Written By Michael Meissner 6 * 64-bit support written by David Edelsohn 7 * 8 * This file is free software; you can redistribute it and/or modify it --- 27 unchanged lines hidden (view full) --- 36 */ 37 38/* Do any initializations needed for the eabi environment */ 39 40 .file "crtsavres.asm" 41 .section ".text" 42 #include "ppc-asm.h" 43 | 1/* 2 * Special support for eabi and SVR4 3 * 4 * Copyright (C) 1995, 1996, 1998, 2000, 2001 Free Software Foundation, Inc. 5 * Written By Michael Meissner 6 * 64-bit support written by David Edelsohn 7 * 8 * This file is free software; you can redistribute it and/or modify it --- 27 unchanged lines hidden (view full) --- 36 */ 37 38/* Do any initializations needed for the eabi environment */ 39 40 .file "crtsavres.asm" 41 .section ".text" 42 #include "ppc-asm.h" 43 |
44/* On PowerPC64 Linux, these functions are provided by the linker. */ |
|
44#ifndef __powerpc64__ 45 46/* Routines for saving floating point registers, called by the compiler. */ 47/* Called with r11 pointing to the stack header word of the caller of the */ 48/* function, just beyond the end of the floating point save area. */ 49 50FUNC_START(_savefpr_14) stfd 14,-144(11) /* save fp registers */ 51FUNC_START(_savefpr_15) stfd 15,-136(11) --- 246 unchanged lines hidden (view full) --- 298FUNC_END(_restgpr_20_x) 299FUNC_END(_restgpr_19_x) 300FUNC_END(_restgpr_18_x) 301FUNC_END(_restgpr_17_x) 302FUNC_END(_restgpr_16_x) 303FUNC_END(_restgpr_15_x) 304FUNC_END(_restgpr_14_x) 305 | 45#ifndef __powerpc64__ 46 47/* Routines for saving floating point registers, called by the compiler. */ 48/* Called with r11 pointing to the stack header word of the caller of the */ 49/* function, just beyond the end of the floating point save area. */ 50 51FUNC_START(_savefpr_14) stfd 14,-144(11) /* save fp registers */ 52FUNC_START(_savefpr_15) stfd 15,-136(11) --- 246 unchanged lines hidden (view full) --- 299FUNC_END(_restgpr_20_x) 300FUNC_END(_restgpr_19_x) 301FUNC_END(_restgpr_18_x) 302FUNC_END(_restgpr_17_x) 303FUNC_END(_restgpr_16_x) 304FUNC_END(_restgpr_15_x) 305FUNC_END(_restgpr_14_x) 306 |
306#else /* __powerpc64__ */ 307 308 .section ".text" 309 .align 2 310 311/* Routines for saving floating point registers, called by the compiler. */ 312 313.fsav: 314FUNC_START(_savef14) stfd 14,-144(1) /* save fp registers */ 315FUNC_START(_savef15) stfd 15,-136(1) 316FUNC_START(_savef16) stfd 16,-128(1) 317FUNC_START(_savef17) stfd 17,-120(1) 318FUNC_START(_savef18) stfd 18,-112(1) 319FUNC_START(_savef19) stfd 19,-104(1) 320FUNC_START(_savef20) stfd 20,-96(1) 321FUNC_START(_savef21) stfd 21,-88(1) 322FUNC_START(_savef22) stfd 22,-80(1) 323FUNC_START(_savef23) stfd 23,-72(1) 324FUNC_START(_savef24) stfd 24,-64(1) 325FUNC_START(_savef25) stfd 25,-56(1) 326FUNC_START(_savef26) stfd 26,-48(1) 327FUNC_START(_savef27) stfd 27,-40(1) 328FUNC_START(_savef28) stfd 28,-32(1) 329FUNC_START(_savef29) stfd 29,-24(1) 330FUNC_START(_savef30) stfd 30,-16(1) 331FUNC_START(_savef31) stfd 31,-8(1) 332 blr 333.LTfsav: 334 .long 0 335 .byte 0,12,0,0,0,0,0,0 336 .long 0 337 .long .LTfsav-.fsav 338 .short 4 339 .ascii "fsav" 340FUNC_END(_savef31) 341FUNC_END(_savef30) 342FUNC_END(_savef29) 343FUNC_END(_savef28) 344FUNC_END(_savef27) 345FUNC_END(_savef26) 346FUNC_END(_savef25) 347FUNC_END(_savef24) 348FUNC_END(_savef23) 349FUNC_END(_savef22) 350FUNC_END(_savef21) 351FUNC_END(_savef20) 352FUNC_END(_savef19) 353FUNC_END(_savef18) 354FUNC_END(_savef17) 355FUNC_END(_savef16) 356FUNC_END(_savef15) 357FUNC_END(_savef14) 358 359/* Routines for restoring floating point registers, called by the compiler. */ 360 361.fres: 362FUNC_START(_restf14) lfd 14,-144(1) /* restore fp registers */ 363FUNC_START(_restf15) lfd 15,-136(1) 364FUNC_START(_restf16) lfd 16,-128(1) 365FUNC_START(_restf17) lfd 17,-120(1) 366FUNC_START(_restf18) lfd 18,-112(1) 367FUNC_START(_restf19) lfd 19,-104(1) 368FUNC_START(_restf20) lfd 20,-96(1) 369FUNC_START(_restf21) lfd 21,-88(1) 370FUNC_START(_restf22) lfd 22,-80(1) 371FUNC_START(_restf23) lfd 23,-72(1) 372FUNC_START(_restf24) lfd 24,-64(1) 373FUNC_START(_restf25) lfd 25,-56(1) 374FUNC_START(_restf26) lfd 26,-48(1) 375FUNC_START(_restf27) lfd 27,-40(1) 376FUNC_START(_restf28) lfd 28,-32(1) 377FUNC_START(_restf29) lfd 29,-24(1) 378FUNC_START(_restf30) lfd 30,-16(1) 379FUNC_START(_restf31) lfd 31,-8(1) 380 blr 381.LTfres: 382 .long 0 383 .byte 0,12,0,0,0,0,0,0 384 .long 0 385 .long .LTfres-.fres 386 .short 4 387 .ascii "fres" 388FUNC_END(_restf31) 389FUNC_END(_restf30) 390FUNC_END(_restf29) 391FUNC_END(_restf28) 392FUNC_END(_restf27) 393FUNC_END(_restf26) 394FUNC_END(_restf25) 395FUNC_END(_restf24) 396FUNC_END(_restf23) 397FUNC_END(_restf22) 398FUNC_END(_restf21) 399FUNC_END(_restf20) 400FUNC_END(_restf19) 401FUNC_END(_restf18) 402FUNC_END(_restf17) 403FUNC_END(_restf16) 404FUNC_END(_restf15) 405FUNC_END(_restf14) 406 | |
407#endif | 307#endif |