linux-bk/arch/s390/kernel/compat_wrapper.S
<<
>>
Prefs
   1/*
   2*  arch/s390/kernel/sys_wrapper31.S
   3*    wrapper for 31 bit compatible system calls.
   4*
   5*  S390 version
   6*    Copyright (C) 2000 IBM Deutschland Entwicklung GmbH, IBM Corporation
   7*    Author(s): Gerhard Tonn (ton@de.ibm.com),
   8*               Thomas Spatzier (tspat@de.ibm.com)
   9*/ 
  10
  11        .globl  sys32_exit_wrapper 
  12sys32_exit_wrapper:
  13        lgfr    %r2,%r2                 # int
  14        jg      sys_exit                # branch to sys_exit
  15    
  16        .globl  sys32_read_wrapper 
  17sys32_read_wrapper:
  18        llgfr   %r2,%r2                 # unsigned int
  19        llgtr   %r3,%r3                 # char *
  20        llgfr   %r4,%r4                 # size_t
  21        jg      sys32_read              # branch to sys_read
  22
  23        .globl  sys32_write_wrapper 
  24sys32_write_wrapper:
  25        llgfr   %r2,%r2                 # unsigned int
  26        llgtr   %r3,%r3                 # const char *
  27        llgfr   %r4,%r4                 # size_t
  28        jg      sys32_write             # branch to system call
  29
  30        .globl  sys32_open_wrapper 
  31sys32_open_wrapper:
  32        llgtr   %r2,%r2                 # const char *
  33        lgfr    %r3,%r3                 # int
  34        lgfr    %r4,%r4                 # int
  35        jg      sys_open                # branch to system call
  36
  37        .globl  sys32_close_wrapper 
  38sys32_close_wrapper:
  39        llgfr   %r2,%r2                 # unsigned int
  40        jg      sys_close               # branch to system call
  41
  42        .globl  sys32_creat_wrapper 
  43sys32_creat_wrapper:
  44        llgtr   %r2,%r2                 # const char *
  45        lgfr    %r3,%r3                 # int
  46        jg      sys_creat               # branch to system call
  47
  48        .globl  sys32_link_wrapper 
  49sys32_link_wrapper:
  50        llgtr   %r2,%r2                 # const char *
  51        llgtr   %r3,%r3                 # const char *
  52        jg      sys_link                # branch to system call
  53
  54        .globl  sys32_unlink_wrapper 
  55sys32_unlink_wrapper:
  56        llgtr   %r2,%r2                 # const char *
  57        jg      sys_unlink              # branch to system call
  58
  59        .globl  sys32_chdir_wrapper 
  60sys32_chdir_wrapper:
  61        llgtr   %r2,%r2                 # const char *
  62        jg      sys_chdir               # branch to system call
  63
  64        .globl  sys32_time_wrapper 
  65sys32_time_wrapper:
  66        llgtr   %r2,%r2                 # int *
  67        jg      compat_sys_time         # branch to system call
  68
  69        .globl  sys32_mknod_wrapper 
  70sys32_mknod_wrapper:
  71        llgtr   %r2,%r2                 # const char *
  72        lgfr    %r3,%r3                 # int 
  73        llgfr   %r4,%r4                 # dev
  74        jg      sys_mknod               # branch to system call
  75
  76        .globl  sys32_chmod_wrapper 
  77sys32_chmod_wrapper:
  78        llgtr   %r2,%r2                 # const char *
  79        llgfr   %r3,%r3                 # mode_t
  80        jg      sys_chmod               # branch to system call
  81
  82        .globl  sys32_lchown16_wrapper 
  83sys32_lchown16_wrapper:
  84        llgtr   %r2,%r2                 # const char *
  85        llgfr   %r3,%r3                 # __kernel_old_uid_emu31_t 
  86        llgfr   %r4,%r4                 # __kernel_old_uid_emu31_t 
  87        jg      sys32_lchown16          # branch to system call
  88
  89        .globl  sys32_lseek_wrapper 
  90sys32_lseek_wrapper:
  91        llgfr   %r2,%r2                 # unsigned int
  92        lgfr    %r3,%r3                 # off_t
  93        llgfr   %r4,%r4                 # unsigned int
  94        jg      sys_lseek               # branch to system call
  95
  96#sys32_getpid_wrapper                           # void 
  97
  98        .globl  sys32_mount_wrapper 
  99sys32_mount_wrapper:
 100        llgtr   %r2,%r2                 # char *
 101        llgtr   %r3,%r3                 # char *
 102        llgtr   %r4,%r4                 # char *
 103        llgfr   %r5,%r5                 # unsigned long
 104        llgtr   %r6,%r6                 # void *
 105        jg      compat_sys_mount        # branch to system call
 106
 107        .globl  sys32_oldumount_wrapper 
 108sys32_oldumount_wrapper:
 109        llgtr   %r2,%r2                 # char *
 110        jg      sys_oldumount           # branch to system call
 111
 112        .globl  sys32_setuid16_wrapper 
 113sys32_setuid16_wrapper:
 114        llgfr   %r2,%r2                 # __kernel_old_uid_emu31_t 
 115        jg      sys32_setuid16          # branch to system call
 116
 117#sys32_getuid16_wrapper                 # void 
 118
 119        .globl  sys32_ptrace_wrapper 
 120sys32_ptrace_wrapper:
 121        lgfr    %r2,%r2                 # long
 122        lgfr    %r3,%r3                 # long
 123        llgtr   %r4,%r4                 # long
 124        llgfr   %r5,%r5                 # long
 125        jg      sys_ptrace              # branch to system call
 126
 127        .globl  sys32_alarm_wrapper 
 128sys32_alarm_wrapper:
 129        llgfr   %r2,%r2                 # unsigned int
 130        jg      sys_alarm               # branch to system call
 131
 132#sys32_pause_wrapper                    # void 
 133
 134        .globl  compat_sys_utime_wrapper 
 135compat_sys_utime_wrapper:
 136        llgtr   %r2,%r2                 # char *
 137        llgtr   %r3,%r3                 # struct compat_utimbuf *
 138        jg      compat_sys_utime        # branch to system call
 139
 140        .globl  sys32_access_wrapper 
 141sys32_access_wrapper:
 142        llgtr   %r2,%r2                 # const char *
 143        lgfr    %r3,%r3                 # int
 144        jg      sys_access              # branch to system call
 145
 146        .globl  sys32_nice_wrapper 
 147sys32_nice_wrapper:
 148        lgfr    %r2,%r2                 # int
 149        jg      sys_nice                # branch to system call
 150
 151#sys32_sync_wrapper                     # void 
 152
 153        .globl  sys32_kill_wrapper 
 154sys32_kill_wrapper:
 155        lgfr    %r2,%r2                 # int
 156        lgfr    %r3,%r3                 # int
 157        jg      sys_kill                # branch to system call
 158
 159        .globl  sys32_rename_wrapper 
 160sys32_rename_wrapper:
 161        llgtr   %r2,%r2                 # const char *
 162        llgtr   %r3,%r3                 # const char *
 163        jg      sys_rename              # branch to system call
 164
 165        .globl  sys32_mkdir_wrapper 
 166sys32_mkdir_wrapper:
 167        llgtr   %r2,%r2                 # const char *
 168        lgfr    %r3,%r3                 # int
 169        jg      sys_mkdir               # branch to system call
 170
 171        .globl  sys32_rmdir_wrapper 
 172sys32_rmdir_wrapper:
 173        llgtr   %r2,%r2                 # const char *
 174        jg      sys_rmdir               # branch to system call
 175
 176        .globl  sys32_dup_wrapper 
 177sys32_dup_wrapper:
 178        llgfr   %r2,%r2                 # unsigned int
 179        jg      sys_dup                 # branch to system call
 180
 181        .globl  sys32_pipe_wrapper 
 182sys32_pipe_wrapper:
 183        llgtr   %r2,%r2                 # u32 *
 184        jg      sys_pipe                # branch to system call
 185
 186        .globl  compat_sys_times_wrapper 
 187compat_sys_times_wrapper:
 188        llgtr   %r2,%r2                 # struct compat_tms *
 189        jg      compat_sys_times        # branch to system call
 190
 191        .globl  sys32_brk_wrapper 
 192sys32_brk_wrapper:
 193        llgtr   %r2,%r2                 # unsigned long
 194        jg      sys_brk                 # branch to system call
 195
 196        .globl  sys32_setgid16_wrapper 
 197sys32_setgid16_wrapper:
 198        llgfr   %r2,%r2                 # __kernel_old_gid_emu31_t 
 199        jg      sys32_setgid16          # branch to system call
 200
 201#sys32_getgid16_wrapper                 # void 
 202
 203        .globl sys32_signal_wrapper
 204sys32_signal_wrapper:
 205        lgfr    %r2,%r2                 # int 
 206        llgtr   %r3,%r3                 # __sighandler_t
 207        jg      sys_signal
 208
 209#sys32_geteuid16_wrapper                # void 
 210
 211#sys32_getegid16_wrapper                # void 
 212
 213        .globl  sys32_acct_wrapper 
 214sys32_acct_wrapper:
 215        llgtr   %r2,%r2                 # char *
 216        jg      sys_acct                # branch to system call
 217
 218        .globl  sys32_umount_wrapper 
 219sys32_umount_wrapper:
 220        llgtr   %r2,%r2                 # char *
 221        lgfr    %r3,%r3                 # int
 222        jg      sys_umount              # branch to system call
 223
 224        .globl  compat_sys_ioctl_wrapper
 225compat_sys_ioctl_wrapper:
 226        llgfr   %r2,%r2                 # unsigned int
 227        llgfr   %r3,%r3                 # unsigned int
 228        llgfr   %r4,%r4                 # unsigned int
 229        jg      compat_sys_ioctl        # branch to system call
 230
 231        .globl  compat_sys_fcntl_wrapper 
 232compat_sys_fcntl_wrapper:
 233        llgfr   %r2,%r2                 # unsigned int
 234        llgfr   %r3,%r3                 # unsigned int 
 235        llgfr   %r4,%r4                 # unsigned long
 236        jg      compat_sys_fcntl        # branch to system call
 237
 238        .globl  sys32_setpgid_wrapper 
 239sys32_setpgid_wrapper:
 240        lgfr    %r2,%r2                 # pid_t
 241        lgfr    %r3,%r3                 # pid_t
 242        jg      sys_setpgid             # branch to system call
 243
 244        .globl  sys32_umask_wrapper 
 245sys32_umask_wrapper:
 246        lgfr    %r2,%r2                 # int
 247        jg      sys_umask               # branch to system call
 248
 249        .globl  sys32_chroot_wrapper 
 250sys32_chroot_wrapper:
 251        llgtr   %r2,%r2                 # char *
 252        jg      sys_chroot              # branch to system call
 253
 254        .globl sys32_ustat_wrapper
 255sys32_ustat_wrapper:
 256        llgfr   %r2,%r2                 # dev_t 
 257        llgtr   %r3,%r3                 # struct ustat *
 258        jg      sys_ustat
 259
 260        .globl  sys32_dup2_wrapper 
 261sys32_dup2_wrapper:
 262        llgfr   %r2,%r2                 # unsigned int
 263        llgfr   %r3,%r3                 # unsigned int
 264        jg      sys_dup2                # branch to system call
 265
 266#sys32_getppid_wrapper                  # void 
 267
 268#sys32_getpgrp_wrapper                  # void 
 269
 270#sys32_setsid_wrapper                   # void 
 271
 272        .globl  sys32_sigaction_wrapper
 273sys32_sigaction_wrapper:
 274        lgfr    %r2,%r2                 # int 
 275        llgtr   %r3,%r3                 # const struct old_sigaction *
 276        llgtr   %r4,%r4                 # struct old_sigaction32 *
 277        jg      sys32_sigaction         # branch to system call
 278
 279        .globl  sys32_setreuid16_wrapper 
 280sys32_setreuid16_wrapper:
 281        llgfr   %r2,%r2                 # __kernel_old_uid_emu31_t 
 282        llgfr   %r3,%r3                 # __kernel_old_uid_emu31_t 
 283        jg      sys32_setreuid16        # branch to system call
 284
 285        .globl  sys32_setregid16_wrapper 
 286sys32_setregid16_wrapper:
 287        llgfr   %r2,%r2                 # __kernel_old_gid_emu31_t 
 288        llgfr   %r3,%r3                 # __kernel_old_gid_emu31_t 
 289        jg      sys32_setregid16        # branch to system call
 290
 291#sys32_sigsuspend_wrapper               # done in sigsuspend_glue 
 292
 293        .globl  compat_sys_sigpending_wrapper 
 294compat_sys_sigpending_wrapper:
 295        llgtr   %r2,%r2                 # compat_old_sigset_t *
 296        jg      compat_sys_sigpending   # branch to system call
 297
 298        .globl  sys32_sethostname_wrapper 
 299sys32_sethostname_wrapper:
 300        llgtr   %r2,%r2                 # char *
 301        lgfr    %r3,%r3                 # int
 302        jg      sys_sethostname         # branch to system call
 303
 304        .globl  compat_sys_setrlimit_wrapper 
 305compat_sys_setrlimit_wrapper:
 306        llgfr   %r2,%r2                 # unsigned int
 307        llgtr   %r3,%r3                 # struct rlimit_emu31 *
 308        jg      compat_sys_setrlimit    # branch to system call
 309
 310        .globl  compat_sys_old_getrlimit_wrapper 
 311compat_sys_old_getrlimit_wrapper:
 312        llgfr   %r2,%r2                 # unsigned int
 313        llgtr   %r3,%r3                 # struct rlimit_emu31 *
 314        jg      compat_sys_old_getrlimit # branch to system call
 315
 316        .globl  compat_sys_getrlimit_wrapper 
 317compat_sys_getrlimit_wrapper:
 318        llgfr   %r2,%r2                 # unsigned int
 319        llgtr   %r3,%r3                 # struct rlimit_emu31 *
 320        jg      compat_sys_getrlimit    # branch to system call
 321
 322        .globl  sys32_mmap2_wrapper 
 323sys32_mmap2_wrapper:
 324        llgtr   %r2,%r2                 # struct mmap_arg_struct_emu31 *
 325        jg      sys32_mmap2                     # branch to system call
 326
 327        .globl  compat_sys_getrusage_wrapper 
 328compat_sys_getrusage_wrapper:
 329        lgfr    %r2,%r2                 # int
 330        llgtr   %r3,%r3                 # struct rusage_emu31 *
 331        jg      compat_sys_getrusage    # branch to system call
 332
 333        .globl  sys32_gettimeofday_wrapper 
 334sys32_gettimeofday_wrapper:
 335        llgtr   %r2,%r2                 # struct timeval_emu31 *
 336        llgtr   %r3,%r3                 # struct timezone *
 337        jg      sys32_gettimeofday      # branch to system call
 338
 339        .globl  sys32_settimeofday_wrapper 
 340sys32_settimeofday_wrapper:
 341        llgtr   %r2,%r2                 # struct timeval_emu31 *
 342        llgtr   %r3,%r3                 # struct timezone *
 343        jg      sys32_settimeofday      # branch to system call
 344
 345        .globl  sys32_getgroups16_wrapper 
 346sys32_getgroups16_wrapper:
 347        lgfr    %r2,%r2                 # int
 348        llgtr   %r3,%r3                 # __kernel_old_gid_emu31_t *
 349        jg      sys32_getgroups16       # branch to system call
 350
 351        .globl  sys32_setgroups16_wrapper 
 352sys32_setgroups16_wrapper:
 353        lgfr    %r2,%r2                 # int
 354        llgtr   %r3,%r3                 # __kernel_old_gid_emu31_t *
 355        jg      sys32_setgroups16       # branch to system call
 356
 357        .globl  sys32_symlink_wrapper 
 358sys32_symlink_wrapper:
 359        llgtr   %r2,%r2                 # const char *
 360        llgtr   %r3,%r3                 # const char *
 361        jg      sys_symlink             # branch to system call
 362
 363        .globl  sys32_readlink_wrapper 
 364sys32_readlink_wrapper:
 365        llgtr   %r2,%r2                 # const char *
 366        llgtr   %r3,%r3                 # char *
 367        lgfr    %r4,%r4                 # int
 368        jg      sys_readlink            # branch to system call
 369
 370        .globl  sys32_uselib_wrapper 
 371sys32_uselib_wrapper:
 372        llgtr   %r2,%r2                 # const char *
 373        jg      sys_uselib              # branch to system call
 374
 375        .globl  sys32_swapon_wrapper 
 376sys32_swapon_wrapper:
 377        llgtr   %r2,%r2                 # const char *
 378        lgfr    %r3,%r3                 # int
 379        jg      sys_swapon              # branch to system call
 380
 381        .globl  sys32_reboot_wrapper 
 382sys32_reboot_wrapper:
 383        lgfr    %r2,%r2                 # int
 384        lgfr    %r3,%r3                 # int
 385        llgfr   %r4,%r4                 # unsigned int
 386        llgtr   %r5,%r5                 # void *
 387        jg      sys_reboot              # branch to system call
 388
 389        .globl  old32_readdir_wrapper 
 390old32_readdir_wrapper:
 391        llgfr   %r2,%r2                 # unsigned int
 392        llgtr   %r3,%r3                 # void *
 393        llgfr   %r4,%r4                 # unsigned int
 394        jg      compat_sys_old_readdir  # branch to system call
 395
 396        .globl  old32_mmap_wrapper 
 397old32_mmap_wrapper:
 398        llgtr   %r2,%r2                 # struct mmap_arg_struct_emu31 *
 399        jg      old32_mmap              # branch to system call
 400
 401        .globl  sys32_munmap_wrapper 
 402sys32_munmap_wrapper:
 403        llgfr   %r2,%r2                 # unsigned long
 404        llgfr   %r3,%r3                 # size_t 
 405        jg      sys_munmap              # branch to system call
 406
 407        .globl  sys32_truncate_wrapper 
 408sys32_truncate_wrapper:
 409        llgtr   %r2,%r2                 # const char *
 410        llgfr   %r3,%r3                 # unsigned long
 411        jg      sys_truncate            # branch to system call
 412
 413        .globl  sys32_ftruncate_wrapper 
 414sys32_ftruncate_wrapper:
 415        llgfr   %r2,%r2                 # unsigned int
 416        llgfr   %r3,%r3                 # unsigned long
 417        jg      sys_ftruncate           # branch to system call
 418
 419        .globl  sys32_fchmod_wrapper 
 420sys32_fchmod_wrapper:
 421        llgfr   %r2,%r2                 # unsigned int
 422        llgfr   %r3,%r3                 # mode_t
 423        jg      sys_fchmod              # branch to system call
 424
 425        .globl  sys32_fchown16_wrapper 
 426sys32_fchown16_wrapper:
 427        llgfr   %r2,%r2                 # unsigned int
 428        llgfr   %r3,%r3                 # compat_uid_t
 429        llgfr   %r4,%r4                 # compat_uid_t
 430        jg      sys32_fchown16          # branch to system call
 431
 432        .globl  sys32_getpriority_wrapper 
 433sys32_getpriority_wrapper:
 434        lgfr    %r2,%r2                 # int
 435        lgfr    %r3,%r3                 # int
 436        jg      sys_getpriority         # branch to system call
 437
 438        .globl  sys32_setpriority_wrapper 
 439sys32_setpriority_wrapper:
 440        lgfr    %r2,%r2                 # int
 441        lgfr    %r3,%r3                 # int
 442        lgfr    %r4,%r4                 # int
 443        jg      sys_setpriority         # branch to system call
 444
 445        .globl  compat_sys_statfs_wrapper 
 446compat_sys_statfs_wrapper:
 447        llgtr   %r2,%r2                 # char *
 448        llgtr   %r3,%r3                 # struct compat_statfs *
 449        jg      compat_sys_statfs       # branch to system call
 450
 451        .globl  compat_sys_fstatfs_wrapper 
 452compat_sys_fstatfs_wrapper:
 453        llgfr   %r2,%r2                 # unsigned int
 454        llgtr   %r3,%r3                 # struct compat_statfs *
 455        jg      compat_sys_fstatfs      # branch to system call
 456
 457        .globl  compat_sys_socketcall_wrapper 
 458compat_sys_socketcall_wrapper:
 459        lgfr    %r2,%r2                 # int
 460        llgtr   %r3,%r3                 # u32 *
 461        jg      compat_sys_socketcall   # branch to system call
 462
 463        .globl  sys32_syslog_wrapper 
 464sys32_syslog_wrapper:
 465        lgfr    %r2,%r2                 # int
 466        llgtr   %r3,%r3                 # char *
 467        lgfr    %r4,%r4                 # int
 468        jg      sys_syslog              # branch to system call
 469
 470        .globl  compat_sys_setitimer_wrapper 
 471compat_sys_setitimer_wrapper:
 472        lgfr    %r2,%r2                 # int
 473        llgtr   %r3,%r3                 # struct itimerval_emu31 *
 474        llgtr   %r4,%r4                 # struct itimerval_emu31 *
 475        jg      compat_sys_setitimer    # branch to system call
 476
 477        .globl  compat_sys_getitimer_wrapper 
 478compat_sys_getitimer_wrapper:
 479        lgfr    %r2,%r2                 # int
 480        llgtr   %r3,%r3                 # struct itimerval_emu31 *
 481        jg      compat_sys_getitimer    # branch to system call
 482
 483        .globl  compat_sys_newstat_wrapper 
 484compat_sys_newstat_wrapper:
 485        llgtr   %r2,%r2                 # char *
 486        llgtr   %r3,%r3                 # struct stat_emu31 *
 487        jg      compat_sys_newstat      # branch to system call
 488
 489        .globl  compat_sys_newlstat_wrapper 
 490compat_sys_newlstat_wrapper:
 491        llgtr   %r2,%r2                 # char *
 492        llgtr   %r3,%r3                 # struct stat_emu31 *
 493        jg      compat_sys_newlstat     # branch to system call
 494
 495        .globl  compat_sys_newfstat_wrapper 
 496compat_sys_newfstat_wrapper:
 497        llgfr   %r2,%r2                 # unsigned int
 498        llgtr   %r3,%r3                 # struct stat_emu31 *
 499        jg      compat_sys_newfstat     # branch to system call
 500
 501#sys32_vhangup_wrapper                  # void 
 502
 503        .globl  compat_sys_wait4_wrapper 
 504compat_sys_wait4_wrapper:
 505        lgfr    %r2,%r2                 # pid_t
 506        llgtr   %r3,%r3                 # unsigned int *
 507        lgfr    %r4,%r4                 # int
 508        llgtr   %r5,%r5                 # struct rusage *
 509        jg      compat_sys_wait4        # branch to system call
 510
 511        .globl  sys32_swapoff_wrapper 
 512sys32_swapoff_wrapper:
 513        llgtr   %r2,%r2                 # const char *
 514        jg      sys_swapoff             # branch to system call
 515
 516        .globl  sys32_sysinfo_wrapper 
 517sys32_sysinfo_wrapper:
 518        llgtr   %r2,%r2                 # struct sysinfo_emu31 *
 519        jg      sys32_sysinfo           # branch to system call
 520
 521        .globl  sys32_ipc_wrapper 
 522sys32_ipc_wrapper:
 523        llgfr   %r2,%r2                 # uint
 524        lgfr    %r3,%r3                 # int
 525        lgfr    %r4,%r4                 # int
 526        lgfr    %r5,%r5                 # int
 527        llgfr   %r6,%r6                 # u32
 528        jg      sys32_ipc               # branch to system call
 529
 530        .globl  sys32_fsync_wrapper 
 531sys32_fsync_wrapper:
 532        llgfr   %r2,%r2                 # unsigned int
 533        jg      sys_fsync               # branch to system call
 534
 535#sys32_sigreturn_wrapper                # done in sigreturn_glue 
 536
 537#sys32_clone_wrapper                    # done in clone_glue 
 538
 539        .globl  sys32_setdomainname_wrapper 
 540sys32_setdomainname_wrapper:
 541        llgtr   %r2,%r2                 # char *
 542        lgfr    %r3,%r3                 # int
 543        jg      sys_setdomainname       # branch to system call
 544
 545        .globl  sys32_newuname_wrapper 
 546sys32_newuname_wrapper:
 547        llgtr   %r2,%r2                 # struct new_utsname *
 548        jg      s390x_newuname          # branch to system call
 549
 550        .globl  sys32_adjtimex_wrapper 
 551sys32_adjtimex_wrapper:
 552        llgtr   %r2,%r2                 # struct timex_emu31 *
 553        jg      sys32_adjtimex          # branch to system call
 554
 555        .globl  sys32_mprotect_wrapper 
 556sys32_mprotect_wrapper:
 557        llgtr   %r2,%r2                 # unsigned long (actually pointer
 558        llgfr   %r3,%r3                 # size_t
 559        llgfr   %r4,%r4                 # unsigned long
 560        jg      sys_mprotect            # branch to system call
 561
 562        .globl  compat_sys_sigprocmask_wrapper 
 563compat_sys_sigprocmask_wrapper:
 564        lgfr    %r2,%r2                 # int
 565        llgtr   %r3,%r3                 # compat_old_sigset_t *
 566        llgtr   %r4,%r4                 # compat_old_sigset_t *
 567        jg      compat_sys_sigprocmask          # branch to system call
 568
 569        .globl  sys32_init_module_wrapper 
 570sys32_init_module_wrapper:
 571        llgtr   %r2,%r2                 # void *
 572        llgfr   %r3,%r3                 # unsigned long
 573        llgtr   %r4,%r4                 # char *
 574        jg      sys32_init_module       # branch to system call
 575
 576        .globl  sys32_delete_module_wrapper 
 577sys32_delete_module_wrapper:
 578        llgtr   %r2,%r2                 # const char *
 579        llgfr   %r3,%r3                 # unsigned int
 580        jg      sys32_delete_module     # branch to system call
 581
 582        .globl  sys32_quotactl_wrapper 
 583sys32_quotactl_wrapper:
 584        llgfr   %r2,%r2                 # unsigned int
 585        llgtr   %r3,%r3                 # const char *
 586        llgfr   %r4,%r4                 # qid_t
 587        llgtr   %r5,%r5                 # caddr_t
 588        jg      sys_quotactl            # branch to system call
 589
 590        .globl  sys32_getpgid_wrapper 
 591sys32_getpgid_wrapper:
 592        lgfr    %r2,%r2                 # pid_t
 593        jg      sys_getpgid             # branch to system call
 594
 595        .globl  sys32_fchdir_wrapper 
 596sys32_fchdir_wrapper:
 597        llgfr   %r2,%r2                 # unsigned int
 598        jg      sys_fchdir              # branch to system call
 599
 600        .globl  sys32_bdflush_wrapper 
 601sys32_bdflush_wrapper:
 602        lgfr    %r2,%r2                 # int
 603        lgfr    %r3,%r3                 # long
 604        jg      sys_bdflush             # branch to system call
 605
 606        .globl  sys32_sysfs_wrapper 
 607sys32_sysfs_wrapper:
 608        lgfr    %r2,%r2                 # int
 609        llgfr   %r3,%r3                 # unsigned long
 610        llgfr   %r4,%r4                 # unsigned long
 611        jg      sys_sysfs               # branch to system call
 612
 613        .globl  sys32_personality_wrapper 
 614sys32_personality_wrapper:
 615        llgfr   %r2,%r2                 # unsigned long
 616        jg      s390x_personality       # branch to system call
 617
 618        .globl  sys32_setfsuid16_wrapper 
 619sys32_setfsuid16_wrapper:
 620        llgfr   %r2,%r2                 # __kernel_old_uid_emu31_t 
 621        jg      sys32_setfsuid16        # branch to system call
 622
 623        .globl  sys32_setfsgid16_wrapper 
 624sys32_setfsgid16_wrapper:
 625        llgfr   %r2,%r2                 # __kernel_old_gid_emu31_t 
 626        jg      sys32_setfsgid16        # branch to system call
 627
 628        .globl  sys32_llseek_wrapper 
 629sys32_llseek_wrapper:
 630        llgfr   %r2,%r2                 # unsigned int
 631        llgfr   %r3,%r3                 # unsigned long
 632        llgfr   %r4,%r4                 # unsigned long
 633        llgtr   %r5,%r5                 # loff_t *
 634        llgfr   %r6,%r6                 # unsigned int
 635        jg      sys_llseek              # branch to system call
 636
 637        .globl  sys32_getdents_wrapper 
 638sys32_getdents_wrapper:
 639        llgfr   %r2,%r2                 # unsigned int
 640        llgtr   %r3,%r3                 # void *
 641        llgfr   %r4,%r4                 # unsigned int
 642        jg      compat_sys_getdents     # branch to system call
 643
 644        .globl  compat_sys_select_wrapper
 645compat_sys_select_wrapper:
 646        lgfr    %r2,%r2                 # int
 647        llgtr   %r3,%r3                 # compat_fd_set *
 648        llgtr   %r4,%r4                 # compat_fd_set *
 649        llgtr   %r5,%r5                 # compat_fd_set *
 650        llgtr   %r6,%r6                 # struct compat_timeval *
 651        jg      compat_sys_select       # branch to system call
 652
 653        .globl  sys32_flock_wrapper 
 654sys32_flock_wrapper:
 655        llgfr   %r2,%r2                 # unsigned int
 656        llgfr   %r3,%r3                 # unsigned int
 657        jg      sys_flock               # branch to system call
 658
 659        .globl  sys32_msync_wrapper 
 660sys32_msync_wrapper:
 661        llgfr   %r2,%r2                 # unsigned long
 662        llgfr   %r3,%r3                 # size_t
 663        lgfr    %r4,%r4                 # int
 664        jg      sys_msync               # branch to system call
 665
 666        .globl  compat_sys_readv_wrapper
 667compat_sys_readv_wrapper:
 668        lgfr    %r2,%r2                 # int
 669        llgtr   %r3,%r3                 # const struct compat_iovec *
 670        llgfr   %r4,%r4                 # unsigned long
 671        jg      compat_sys_readv        # branch to system call
 672
 673        .globl  compat_sys_writev_wrapper
 674compat_sys_writev_wrapper:
 675        lgfr    %r2,%r2                 # int
 676        llgtr   %r3,%r3                 # const struct compat_iovec *
 677        llgfr   %r4,%r4                 # unsigned long
 678        jg      compat_sys_writev       # branch to system call
 679
 680        .globl  sys32_getsid_wrapper 
 681sys32_getsid_wrapper:
 682        lgfr    %r2,%r2                 # pid_t
 683        jg      sys_getsid              # branch to system call
 684
 685        .globl  sys32_fdatasync_wrapper 
 686sys32_fdatasync_wrapper:
 687        llgfr   %r2,%r2                 # unsigned int
 688        jg      sys_fdatasync           # branch to system call
 689
 690#sys32_sysctl_wrapper                   # tbd 
 691
 692        .globl  sys32_mlock_wrapper 
 693sys32_mlock_wrapper:
 694        llgfr   %r2,%r2                 # unsigned long
 695        llgfr   %r3,%r3                 # size_t
 696        jg      sys_mlock               # branch to system call
 697
 698        .globl  sys32_munlock_wrapper 
 699sys32_munlock_wrapper:
 700        llgfr   %r2,%r2                 # unsigned long
 701        llgfr   %r3,%r3                 # size_t
 702        jg      sys_munlock             # branch to system call
 703
 704        .globl  sys32_mlockall_wrapper 
 705sys32_mlockall_wrapper:
 706        lgfr    %r2,%r2                 # int
 707        jg      sys_mlockall            # branch to system call
 708
 709#sys32_munlockall_wrapper               # void 
 710
 711        .globl  sys32_sched_setparam_wrapper 
 712sys32_sched_setparam_wrapper:
 713        lgfr    %r2,%r2                 # pid_t
 714        llgtr   %r3,%r3                 # struct sched_param *
 715        jg      sys_sched_setparam      # branch to system call
 716
 717        .globl  sys32_sched_getparam_wrapper 
 718sys32_sched_getparam_wrapper:
 719        lgfr    %r2,%r2                 # pid_t
 720        llgtr   %r3,%r3                 # struct sched_param *
 721        jg      sys_sched_getparam      # branch to system call
 722
 723        .globl  sys32_sched_setscheduler_wrapper 
 724sys32_sched_setscheduler_wrapper:
 725        lgfr    %r2,%r2                 # pid_t
 726        lgfr    %r3,%r3                 # int
 727        llgtr   %r4,%r4                 # struct sched_param *
 728        jg      sys_sched_setscheduler  # branch to system call
 729
 730        .globl  sys32_sched_getscheduler_wrapper 
 731sys32_sched_getscheduler_wrapper:
 732        lgfr    %r2,%r2                 # pid_t
 733        jg      sys_sched_getscheduler  # branch to system call
 734
 735#sys32_sched_yield_wrapper              # void 
 736
 737        .globl  sys32_sched_get_priority_max_wrapper 
 738sys32_sched_get_priority_max_wrapper:
 739        lgfr    %r2,%r2                 # int
 740        jg      sys_sched_get_priority_max      # branch to system call
 741
 742        .globl  sys32_sched_get_priority_min_wrapper 
 743sys32_sched_get_priority_min_wrapper:
 744        lgfr    %r2,%r2                 # int
 745        jg      sys_sched_get_priority_min      # branch to system call
 746
 747        .globl  sys32_sched_rr_get_interval_wrapper 
 748sys32_sched_rr_get_interval_wrapper:
 749        lgfr    %r2,%r2                 # pid_t
 750        llgtr   %r3,%r3                 # struct compat_timespec *
 751        jg      sys32_sched_rr_get_interval     # branch to system call
 752
 753        .globl  compat_sys_nanosleep_wrapper 
 754compat_sys_nanosleep_wrapper:
 755        llgtr   %r2,%r2                 # struct compat_timespec *
 756        llgtr   %r3,%r3                 # struct compat_timespec *
 757        jg      compat_sys_nanosleep            # branch to system call
 758
 759        .globl  sys32_mremap_wrapper 
 760sys32_mremap_wrapper:
 761        llgfr   %r2,%r2                 # unsigned long
 762        llgfr   %r3,%r3                 # unsigned long
 763        llgfr   %r4,%r4                 # unsigned long
 764        llgfr   %r5,%r5                 # unsigned long
 765        llgfr   %r6,%r6                 # unsigned long
 766        jg      sys_mremap              # branch to system call
 767
 768        .globl  sys32_setresuid16_wrapper 
 769sys32_setresuid16_wrapper:
 770        llgfr   %r2,%r2                 # __kernel_old_uid_emu31_t 
 771        llgfr   %r3,%r3                 # __kernel_old_uid_emu31_t 
 772        llgfr   %r4,%r4                 # __kernel_old_uid_emu31_t 
 773        jg      sys32_setresuid16       # branch to system call
 774
 775        .globl  sys32_getresuid16_wrapper 
 776sys32_getresuid16_wrapper:
 777        llgtr   %r2,%r2                 # __kernel_old_uid_emu31_t *
 778        llgtr   %r3,%r3                 # __kernel_old_uid_emu31_t *
 779        llgtr   %r4,%r4                 # __kernel_old_uid_emu31_t *
 780        jg      sys32_getresuid16       # branch to system call
 781
 782        .globl  sys32_poll_wrapper 
 783sys32_poll_wrapper:
 784        llgtr   %r2,%r2                 # struct pollfd * 
 785        llgfr   %r3,%r3                 # unsigned int 
 786        lgfr    %r4,%r4                 # long 
 787        jg      sys_poll                # branch to system call
 788
 789        .globl  compat_sys_nfsservctl_wrapper
 790compat_sys_nfsservctl_wrapper:
 791        lgfr    %r2,%r2                 # int 
 792        llgtr   %r3,%r3                 # struct compat_nfsctl_arg*
 793        llgtr   %r4,%r4                 # union compat_nfsctl_res*
 794        jg      compat_sys_nfsservctl   # branch to system call
 795
 796        .globl  sys32_setresgid16_wrapper 
 797sys32_setresgid16_wrapper:
 798        llgfr   %r2,%r2                 # __kernel_old_gid_emu31_t 
 799        llgfr   %r3,%r3                 # __kernel_old_gid_emu31_t 
 800        llgfr   %r4,%r4                 # __kernel_old_gid_emu31_t 
 801        jg      sys32_setresgid16       # branch to system call
 802
 803        .globl  sys32_getresgid16_wrapper 
 804sys32_getresgid16_wrapper:
 805        llgtr   %r2,%r2                 # __kernel_old_gid_emu31_t *
 806        llgtr   %r3,%r3                 # __kernel_old_gid_emu31_t *
 807        llgtr   %r4,%r4                 # __kernel_old_gid_emu31_t *
 808        jg      sys32_getresgid16       # branch to system call
 809
 810        .globl  sys32_prctl_wrapper 
 811sys32_prctl_wrapper:
 812        lgfr    %r2,%r2                 # int
 813        llgfr   %r3,%r3                 # unsigned long
 814        llgfr   %r4,%r4                 # unsigned long
 815        llgfr   %r5,%r5                 # unsigned long
 816        llgfr   %r6,%r6                 # unsigned long
 817        jg      sys_prctl               # branch to system call
 818
 819#sys32_rt_sigreturn_wrapper             # done in rt_sigreturn_glue 
 820
 821        .globl  sys32_rt_sigaction_wrapper 
 822sys32_rt_sigaction_wrapper:
 823        lgfr    %r2,%r2                 # int
 824        llgtr   %r3,%r3                 # const struct sigaction_emu31 *
 825        llgtr   %r4,%r4                 # const struct sigaction_emu31 *
 826        llgfr   %r5,%r5                 # size_t
 827        jg      sys32_rt_sigaction      # branch to system call
 828
 829        .globl  sys32_rt_sigprocmask_wrapper 
 830sys32_rt_sigprocmask_wrapper:
 831        lgfr    %r2,%r2                 # int
 832        llgtr   %r3,%r3                 # old_sigset_emu31 *
 833        llgtr   %r4,%r4                 # old_sigset_emu31 *
 834        llgfr   %r5,%r5                 # size_t
 835        jg      sys32_rt_sigprocmask    # branch to system call
 836
 837        .globl  sys32_rt_sigpending_wrapper 
 838sys32_rt_sigpending_wrapper:
 839        llgtr   %r2,%r2                 # sigset_emu31 *
 840        llgfr   %r3,%r3                 # size_t
 841        jg      sys32_rt_sigpending     # branch to system call
 842
 843        .globl  compat_sys_rt_sigtimedwait_wrapper
 844compat_sys_rt_sigtimedwait_wrapper:
 845        llgtr   %r2,%r2                 # const sigset_emu31_t *
 846        llgtr   %r3,%r3                 # siginfo_emu31_t *
 847        llgtr   %r4,%r4                 # const struct compat_timespec *
 848        llgfr   %r5,%r5                 # size_t
 849        jg      compat_sys_rt_sigtimedwait      # branch to system call
 850
 851        .globl  sys32_rt_sigqueueinfo_wrapper 
 852sys32_rt_sigqueueinfo_wrapper:
 853        lgfr    %r2,%r2                 # int
 854        lgfr    %r3,%r3                 # int
 855        llgtr   %r4,%r4                 # siginfo_emu31_t *
 856        jg      sys32_rt_sigqueueinfo   # branch to system call
 857
 858#sys32_rt_sigsuspend_wrapper            # done in rt_sigsuspend_glue 
 859
 860        .globl  sys32_pread64_wrapper 
 861sys32_pread64_wrapper:
 862        llgfr   %r2,%r2                 # unsigned int
 863        llgtr   %r3,%r3                 # char *
 864        llgfr   %r4,%r4                 # size_t
 865        llgfr   %r5,%r5                 # u32
 866        llgfr   %r6,%r6                 # u32
 867        jg      sys32_pread64           # branch to system call
 868
 869        .globl  sys32_pwrite64_wrapper 
 870sys32_pwrite64_wrapper:
 871        llgfr   %r2,%r2                 # unsigned int
 872        llgtr   %r3,%r3                 # const char *
 873        llgfr   %r4,%r4                 # size_t
 874        llgfr   %r5,%r5                 # u32
 875        llgfr   %r6,%r6                 # u32
 876        jg      sys32_pwrite64          # branch to system call
 877
 878        .globl  sys32_chown16_wrapper 
 879sys32_chown16_wrapper:
 880        llgtr   %r2,%r2                 # const char *
 881        llgfr   %r3,%r3                 # __kernel_old_uid_emu31_t 
 882        llgfr   %r4,%r4                 # __kernel_old_gid_emu31_t 
 883        jg      sys32_chown16           # branch to system call
 884
 885        .globl  sys32_getcwd_wrapper 
 886sys32_getcwd_wrapper:
 887        llgtr   %r2,%r2                 # char *
 888        llgfr   %r3,%r3                 # unsigned long
 889        jg      sys_getcwd              # branch to system call
 890
 891        .globl  sys32_capget_wrapper 
 892sys32_capget_wrapper:
 893        llgtr   %r2,%r2                 # cap_user_header_t
 894        llgtr   %r3,%r3                 # cap_user_data_t
 895        jg      sys_capget              # branch to system call
 896
 897        .globl  sys32_capset_wrapper 
 898sys32_capset_wrapper:
 899        llgtr   %r2,%r2                 # cap_user_header_t
 900        llgtr   %r3,%r3                 # const cap_user_data_t
 901        jg      sys_capset              # branch to system call
 902
 903        .globl sys32_sigaltstack_wrapper
 904sys32_sigaltstack_wrapper:
 905        llgtr   %r2,%r2                 # const stack_emu31_t * 
 906        llgtr   %r3,%r3                 # stack_emu31_t * 
 907        jg      sys32_sigaltstack
 908
 909        .globl  sys32_sendfile_wrapper 
 910sys32_sendfile_wrapper:
 911        lgfr    %r2,%r2                 # int
 912        lgfr    %r3,%r3                 # int
 913        llgtr   %r4,%r4                 # __kernel_off_emu31_t *
 914        llgfr   %r5,%r5                 # size_t
 915        jg      sys32_sendfile          # branch to system call
 916
 917#sys32_vfork_wrapper                    # done in vfork_glue 
 918
 919        .globl  sys32_truncate64_wrapper 
 920sys32_truncate64_wrapper:
 921        llgtr   %r2,%r2                 # const char *
 922        llgfr   %r3,%r3                 # unsigned long
 923        llgfr   %r4,%r4                 # unsigned long
 924        jg      sys32_truncate64        # branch to system call
 925
 926        .globl  sys32_ftruncate64_wrapper 
 927sys32_ftruncate64_wrapper:
 928        llgfr   %r2,%r2                 # unsigned int
 929        llgfr   %r3,%r3                 # unsigned long
 930        llgfr   %r4,%r4                 # unsigned long
 931        jg      sys32_ftruncate64       # branch to system call
 932
 933        .globl sys32_lchown_wrapper     
 934sys32_lchown_wrapper:
 935        llgtr   %r2,%r2                 # const char *
 936        llgfr   %r3,%r3                 # uid_t
 937        llgfr   %r4,%r4                 # gid_t
 938        jg      sys_lchown              # branch to system call
 939
 940#sys32_getuid_wrapper                   # void                   
 941#sys32_getgid_wrapper                   # void 
 942#sys32_geteuid_wrapper                  # void 
 943#sys32_getegid_wrapper                  # void 
 944
 945        .globl sys32_setreuid_wrapper
 946sys32_setreuid_wrapper:
 947        llgfr   %r2,%r2                 # uid_t
 948        llgfr   %r3,%r3                 # uid_t
 949        jg      sys_setreuid            # branch to system call
 950
 951        .globl sys32_setregid_wrapper
 952sys32_setregid_wrapper:
 953        llgfr   %r2,%r2                 # gid_t
 954        llgfr   %r3,%r3                 # gid_t
 955        jg      sys_setregid            # branch to system call
 956
 957        .globl  sys32_getgroups_wrapper 
 958sys32_getgroups_wrapper:
 959        lgfr    %r2,%r2                 # int
 960        llgtr   %r3,%r3                 # gid_t *
 961        jg      sys_getgroups           # branch to system call
 962
 963        .globl  sys32_setgroups_wrapper 
 964sys32_setgroups_wrapper:
 965        lgfr    %r2,%r2                 # int
 966        llgtr   %r3,%r3                 # gid_t *
 967        jg      sys_setgroups           # branch to system call
 968
 969        .globl sys32_fchown_wrapper     
 970sys32_fchown_wrapper:
 971        llgfr   %r2,%r2                 # unsigned int
 972        llgfr   %r3,%r3                 # uid_t
 973        llgfr   %r4,%r4                 # gid_t
 974        jg      sys_fchown              # branch to system call
 975
 976        .globl sys32_setresuid_wrapper  
 977sys32_setresuid_wrapper:
 978        llgfr   %r2,%r2                 # uid_t
 979        llgfr   %r3,%r3                 # uid_t
 980        llgfr   %r4,%r4                 # uid_t
 981        jg      sys_setresuid           # branch to system call
 982
 983        .globl sys32_getresuid_wrapper  
 984sys32_getresuid_wrapper:
 985        llgtr   %r2,%r2                 # uid_t *
 986        llgtr   %r3,%r3                 # uid_t *
 987        llgtr   %r4,%r4                 # uid_t *
 988        jg      sys_getresuid           # branch to system call
 989
 990        .globl sys32_setresgid_wrapper  
 991sys32_setresgid_wrapper:
 992        llgfr   %r2,%r2                 # gid_t
 993        llgfr   %r3,%r3                 # gid_t
 994        llgfr   %r4,%r4                 # gid_t
 995        jg      sys_setresgid           # branch to system call
 996
 997        .globl sys32_getresgid_wrapper  
 998sys32_getresgid_wrapper:
 999        llgtr   %r2,%r2                 # gid_t *
1000        llgtr   %r3,%r3                 # gid_t *
1001        llgtr   %r4,%r4                 # gid_t *
1002        jg      sys_getresgid           # branch to system call
1003
1004        .globl sys32_chown_wrapper      
1005sys32_chown_wrapper:
1006        llgtr   %r2,%r2                 # const char *
1007        llgfr   %r3,%r3                 # uid_t
1008        llgfr   %r4,%r4                 # gid_t
1009        jg      sys_chown               # branch to system call
1010
1011        .globl sys32_setuid_wrapper     
1012sys32_setuid_wrapper:
1013        llgfr   %r2,%r2                 # uid_t
1014        jg      sys_setuid              # branch to system call
1015
1016        .globl sys32_setgid_wrapper     
1017sys32_setgid_wrapper:
1018        llgfr   %r2,%r2                 # gid_t
1019        jg      sys_setgid              # branch to system call
1020
1021        .globl sys32_setfsuid_wrapper   
1022sys32_setfsuid_wrapper:
1023        llgfr   %r2,%r2                 # uid_t
1024        jg      sys_setfsuid            # branch to system call
1025
1026        .globl sys32_setfsgid_wrapper   
1027sys32_setfsgid_wrapper:
1028        llgfr   %r2,%r2                 # gid_t
1029        jg      sys_setfsgid            # branch to system call
1030
1031        .globl  sys32_pivot_root_wrapper 
1032sys32_pivot_root_wrapper:
1033        llgtr   %r2,%r2                 # const char *
1034        llgtr   %r3,%r3                 # const char *
1035        jg      sys_pivot_root          # branch to system call
1036
1037        .globl  sys32_mincore_wrapper 
1038sys32_mincore_wrapper:
1039        llgfr   %r2,%r2                 # unsigned long
1040        llgfr   %r3,%r3                 # size_t
1041        llgtr   %r4,%r4                 # unsigned char *
1042        jg      sys_mincore             # branch to system call
1043
1044        .globl  sys32_madvise_wrapper 
1045sys32_madvise_wrapper:
1046        llgfr   %r2,%r2                 # unsigned long
1047        llgfr   %r3,%r3                 # size_t
1048        lgfr    %r4,%r4                 # int
1049        jg      sys_madvise             # branch to system call
1050
1051        .globl  sys32_getdents64_wrapper 
1052sys32_getdents64_wrapper:
1053        llgfr   %r2,%r2                 # unsigned int
1054        llgtr   %r3,%r3                 # void *
1055        llgfr   %r4,%r4                 # unsigned int
1056        jg      sys_getdents64          # branch to system call
1057
1058        .globl  compat_sys_fcntl64_wrapper 
1059compat_sys_fcntl64_wrapper:
1060        llgfr   %r2,%r2                 # unsigned int
1061        llgfr   %r3,%r3                 # unsigned int 
1062        llgfr   %r4,%r4                 # unsigned long
1063        jg      compat_sys_fcntl64      # branch to system call
1064
1065        .globl  sys32_stat64_wrapper
1066sys32_stat64_wrapper:
1067        llgtr   %r2,%r2                 # char *
1068        llgtr   %r3,%r3                 # struct stat64 *
1069        jg      sys32_stat64            # branch to system call
1070
1071        .globl  sys32_lstat64_wrapper
1072sys32_lstat64_wrapper:
1073        llgtr   %r2,%r2                 # char *
1074        llgtr   %r3,%r3                 # struct stat64 *
1075        jg      sys32_lstat64           # branch to system call
1076
1077        .globl  sys32_stime_wrapper
1078sys32_stime_wrapper:
1079        llgtr   %r2,%r2                 # long *
1080        jg      compat_sys_stime        # branch to system call
1081
1082        .globl  sys32_sysctl_wrapper
1083sys32_sysctl_wrapper:
1084        llgtr   %r2,%r2                 # struct __sysctl_args32 *
1085        jg      sys32_sysctl
1086
1087        .globl  sys32_fstat64_wrapper
1088sys32_fstat64_wrapper:
1089        llgfr   %r2,%r2                 # unsigned long
1090        llgtr   %r3,%r3                 # struct stat64 *
1091        jg      sys32_fstat64           # branch to system call
1092
1093        .globl  compat_sys_futex_wrapper 
1094compat_sys_futex_wrapper:
1095        llgtr   %r2,%r2                 # u32 *
1096        lgfr    %r3,%r3                 # int
1097        lgfr    %r4,%r4                 # int
1098        llgtr   %r5,%r5                 # struct compat_timespec *
1099        llgtr   %r6,%r6                 # u32 *
1100        lgf     %r0,164(%r15)           # int
1101        stg     %r0,160(%r15)
1102        jg      compat_sys_futex        # branch to system call
1103
1104        .globl  sys32_setxattr_wrapper
1105sys32_setxattr_wrapper:
1106        llgtr   %r2,%r2                 # char *
1107        llgtr   %r3,%r3                 # char *
1108        llgtr   %r4,%r4                 # void *
1109        llgfr   %r5,%r5                 # size_t
1110        lgfr    %r6,%r6                 # int
1111        jg      sys_setxattr
1112
1113        .globl  sys32_lsetxattr_wrapper
1114sys32_lsetxattr_wrapper:
1115        llgtr   %r2,%r2                 # char *
1116        llgtr   %r3,%r3                 # char *
1117        llgtr   %r4,%r4                 # void *
1118        llgfr   %r5,%r5                 # size_t
1119        lgfr    %r6,%r6                 # int
1120        jg      sys_lsetxattr
1121
1122        .globl  sys32_fsetxattr_wrapper
1123sys32_fsetxattr_wrapper:
1124        lgfr    %r2,%r2                 # int
1125        llgtr   %r3,%r3                 # char *
1126        llgtr   %r4,%r4                 # void *
1127        llgfr   %r5,%r5                 # size_t
1128        lgfr    %r6,%r6                 # int
1129        jg      sys_fsetxattr
1130
1131        .globl  sys32_getxattr_wrapper
1132sys32_getxattr_wrapper:
1133        llgtr   %r2,%r2                 # char *
1134        llgtr   %r3,%r3                 # char *
1135        llgtr   %r4,%r4                 # void *
1136        llgfr   %r5,%r5                 # size_t
1137        jg      sys_getxattr
1138
1139        .globl  sys32_lgetxattr_wrapper
1140sys32_lgetxattr_wrapper:
1141        llgtr   %r2,%r2                 # char *
1142        llgtr   %r3,%r3                 # char *
1143        llgtr   %r4,%r4                 # void *
1144        llgfr   %r5,%r5                 # size_t
1145        jg      sys_lgetxattr
1146
1147        .globl  sys32_fgetxattr_wrapper
1148sys32_fgetxattr_wrapper:
1149        lgfr    %r2,%r2                 # int
1150        llgtr   %r3,%r3                 # char *
1151        llgtr   %r4,%r4                 # void *
1152        llgfr   %r5,%r5                 # size_t
1153        jg      sys_fgetxattr
1154
1155        .globl  sys32_listxattr_wrapper
1156sys32_listxattr_wrapper:
1157        llgtr   %r2,%r2                 # char *
1158        llgtr   %r3,%r3                 # char *
1159        llgfr   %r4,%r4                 # size_t
1160        jg      sys_listxattr
1161
1162        .globl  sys32_llistxattr_wrapper
1163sys32_llistxattr_wrapper:
1164        llgtr   %r2,%r2                 # char *
1165        llgtr   %r3,%r3                 # char *
1166        llgfr   %r4,%r4                 # size_t
1167        jg      sys_llistxattr
1168
1169        .globl  sys32_flistxattr_wrapper
1170sys32_flistxattr_wrapper:
1171        lgfr    %r2,%r2                 # int
1172        llgtr   %r3,%r3                 # char *
1173        llgfr   %r4,%r4                 # size_t
1174        jg      sys_flistxattr
1175
1176        .globl  sys32_removexattr_wrapper
1177sys32_removexattr_wrapper:
1178        llgtr   %r2,%r2                 # char *
1179        llgtr   %r3,%r3                 # char *
1180        jg      sys_removexattr
1181
1182        .globl  sys32_lremovexattr_wrapper
1183sys32_lremovexattr_wrapper:
1184        llgtr   %r2,%r2                 # char *
1185        llgtr   %r3,%r3                 # char *
1186        jg      sys_lremovexattr
1187
1188        .globl  sys32_fremovexattr_wrapper
1189sys32_fremovexattr_wrapper:
1190        lgfr    %r2,%r2                 # int
1191        llgtr   %r3,%r3                 # char *
1192        jg      sys_fremovexattr
1193
1194        .globl  sys32_sched_setaffinity_wrapper
1195sys32_sched_setaffinity_wrapper:
1196        lgfr    %r2,%r2                 # int
1197        llgfr   %r3,%r3                 # unsigned int
1198        llgtr   %r4,%r4                 # unsigned long *
1199        jg      compat_sys_sched_setaffinity
1200
1201        .globl  sys32_sched_getaffinity_wrapper
1202sys32_sched_getaffinity_wrapper:
1203        lgfr    %r2,%r2                 # int
1204        llgfr   %r3,%r3                 # unsigned int
1205        llgtr   %r4,%r4                 # unsigned long *
1206        jg      compat_sys_sched_getaffinity
1207
1208        .globl  sys32_exit_group_wrapper
1209sys32_exit_group_wrapper:
1210        lgfr    %r2,%r2                 # int
1211        jg      sys_exit_group          # branch to system call
1212
1213        .globl  sys32_set_tid_address_wrapper
1214sys32_set_tid_address_wrapper:
1215        llgtr   %r2,%r2                 # int *
1216        jg      sys_set_tid_address     # branch to system call
1217
1218        .globl  sys_epoll_create_wrapper
1219sys_epoll_create_wrapper:
1220        lgfr    %r2,%r2                 # int
1221        jg      sys_epoll_create        # branch to system call
1222
1223        .globl  sys_epoll_ctl_wrapper
1224sys_epoll_ctl_wrapper:
1225        lgfr    %r2,%r2                 # int
1226        lgfr    %r3,%r3                 # int
1227        lgfr    %r4,%r4                 # int
1228        llgtr   %r5,%r5                 # struct epoll_event *
1229        jg      sys_epoll_ctl           # branch to system call
1230
1231        .globl  sys_epoll_wait_wrapper
1232sys_epoll_wait_wrapper:
1233        lgfr    %r2,%r2                 # int
1234        llgtr   %r3,%r3                 # struct epoll_event *
1235        lgfr    %r4,%r4                 # int
1236        lgfr    %r5,%r5                 # int
1237        jg      sys_epoll_wait          # branch to system call
1238
1239        .globl  sys32_lookup_dcookie_wrapper
1240sys32_lookup_dcookie_wrapper:
1241        sllg    %r2,%r2,32              # get high word of 64bit dcookie
1242        or      %r2,%r3                 # get low word of 64bit dcookie
1243        llgtr   %r3,%r4                 # char *
1244        llgfr   %r4,%r5                 # size_t
1245        jg      sys_lookup_dcookie
1246
1247        .globl  sys32_fadvise64_wrapper
1248sys32_fadvise64_wrapper:
1249        lgfr    %r2,%r2                 # int
1250        sllg    %r3,%r3,32              # get high word of 64bit loff_t
1251        or      %r3,%r4                 # get low word of 64bit loff_t
1252        llgfr   %r4,%r5                 # size_t (unsigned long)
1253        lgfr    %r5,%r6                 # int
1254        jg      sys_fadvise64
1255
1256        .globl  sys32_fadvise64_64_wrapper
1257sys32_fadvise64_64_wrapper:
1258        llgtr   %r2,%r2                 # struct fadvise64_64_args *
1259        jg      s390_fadvise64_64
1260
1261        .globl  sys32_clock_settime_wrapper
1262sys32_clock_settime_wrapper:
1263        lgfr    %r2,%r2                 # clockid_t (int)
1264        llgtr   %r3,%r3                 # struct compat_timespec *
1265        jg      compat_sys_clock_settime
1266
1267        .globl  sys32_clock_gettime_wrapper
1268sys32_clock_gettime_wrapper:
1269        lgfr    %r2,%r2                 # clockid_t (int)
1270        llgtr   %r3,%r3                 # struct compat_timespec *
1271        jg      compat_sys_clock_gettime
1272
1273        .globl  sys32_clock_getres_wrapper
1274sys32_clock_getres_wrapper:
1275        lgfr    %r2,%r2                 # clockid_t (int)
1276        llgtr   %r3,%r3                 # struct compat_timespec *
1277        jg      compat_sys_clock_getres
1278
1279        .globl  sys32_clock_nanosleep_wrapper
1280sys32_clock_nanosleep_wrapper:
1281        lgfr    %r2,%r2                 # clockid_t (int)
1282        lgfr    %r3,%r3                 # int
1283        llgtr   %r4,%r4                 # struct compat_timespec *
1284        llgtr   %r5,%r5                 # struct compat_timespec *
1285        jg      compat_sys_clock_nanosleep
1286
1287        .globl  sys32_timer_create_wrapper
1288sys32_timer_create_wrapper:
1289        lgfr    %r2,%r2                 # timer_t (int)
1290        llgtr   %r3,%r3                 # struct compat_sigevent *
1291        llgtr   %r4,%r4                 # timer_t *
1292        jg      sys32_timer_create
1293
1294        .globl  sys32_timer_settime_wrapper
1295sys32_timer_settime_wrapper:
1296        lgfr    %r2,%r2                 # timer_t (int)
1297        lgfr    %r3,%r3                 # int
1298        llgtr   %r4,%r4                 # struct compat_itimerspec *
1299        llgtr   %r5,%r5                 # struct compat_itimerspec *
1300        jg      compat_sys_timer_settime
1301
1302        .globl  sys32_timer_gettime_wrapper
1303sys32_timer_gettime_wrapper:
1304        lgfr    %r2,%r2                 # timer_t (int)
1305        llgtr   %r3,%r3                 # struct compat_itimerspec *
1306        jg      compat_sys_timer_gettime
1307
1308        .globl  sys32_timer_getoverrun_wrapper
1309sys32_timer_getoverrun_wrapper:
1310        lgfr    %r2,%r2                 # timer_t (int)
1311        jg      sys_timer_getoverrun
1312
1313        .globl  sys32_timer_delete_wrapper
1314sys32_timer_delete_wrapper:
1315        lgfr    %r2,%r2                 # timer_t (int)
1316        jg      sys_timer_delete
1317
1318        .globl  sys32_io_setup_wrapper
1319sys32_io_setup_wrapper:
1320        llgfr   %r2,%r2                 # unsigned int
1321        llgtr   %r3,%r3                 # u32 *
1322        jg      compat_sys_io_setup
1323
1324        .globl  sys32_io_destroy_wrapper
1325sys32_io_destroy_wrapper:
1326        llgfr   %r2,%r2                 # (aio_context_t) u32
1327        jg      sys_io_destroy
1328
1329        .globl  sys32_io_getevents_wrapper
1330sys32_io_getevents_wrapper:
1331        llgfr   %r2,%r2                 # (aio_context_t) u32
1332        lgfr    %r3,%r3                 # long
1333        lgfr    %r4,%r4                 # long
1334        llgtr   %r5,%r5                 # struct io_event *
1335        llgtr   %r6,%r6                 # struct compat_timespec *
1336        jg      compat_sys_io_getevents
1337
1338        .globl  sys32_io_submit_wrapper
1339sys32_io_submit_wrapper:
1340        llgfr   %r2,%r2                 # (aio_context_t) u32
1341        lgfr    %r3,%r3                 # long
1342        llgtr   %r4,%r4                 # struct iocb **
1343        jg      compat_sys_io_submit
1344
1345        .globl  sys32_io_cancel_wrapper
1346sys32_io_cancel_wrapper:
1347        llgfr   %r2,%r2                 # (aio_context_t) u32
1348        llgtr   %r3,%r3                 # struct iocb *
1349        llgtr   %r4,%r4                 # struct io_event *
1350        jg      sys_io_cancel
1351
1352        .globl compat_sys_statfs64_wrapper
1353compat_sys_statfs64_wrapper:
1354        llgtr   %r2,%r2                 # const char *
1355        llgfr   %r3,%r3                 # compat_size_t
1356        llgtr   %r4,%r4                 # struct compat_statfs64 *
1357        jg      compat_sys_statfs64
1358
1359        .globl compat_sys_fstatfs64_wrapper
1360compat_sys_fstatfs64_wrapper:
1361        llgfr   %r2,%r2                 # unsigned int fd
1362        llgfr   %r3,%r3                 # compat_size_t
1363        llgtr   %r4,%r4                 # struct compat_statfs64 *
1364        jg      compat_sys_fstatfs64
1365
1366        .globl  compat_sys_mq_open_wrapper
1367compat_sys_mq_open_wrapper:
1368        llgtr   %r2,%r2                 # const char *
1369        lgfr    %r3,%r3                 # int
1370        llgfr   %r4,%r4                 # mode_t
1371        llgtr   %r5,%r5                 # struct compat_mq_attr *
1372        jg      compat_sys_mq_open
1373
1374        .globl  sys32_mq_unlink_wrapper
1375sys32_mq_unlink_wrapper:
1376        llgtr   %r2,%r2                 # const char *
1377        jg      sys_mq_unlink
1378
1379        .globl  compat_sys_mq_timedsend_wrapper
1380compat_sys_mq_timedsend_wrapper:
1381        lgfr    %r2,%r2                 # mqd_t
1382        llgtr   %r3,%r3                 # const char *
1383        llgfr   %r4,%r4                 # size_t
1384        llgfr   %r5,%r5                 # unsigned int
1385        llgtr   %r6,%r6                 # const struct compat_timespec *
1386        jg      compat_sys_mq_timedsend
1387
1388        .globl  compat_sys_mq_timedreceive_wrapper
1389compat_sys_mq_timedreceive_wrapper:
1390        lgfr    %r2,%r2                 # mqd_t
1391        llgtr   %r3,%r3                 # char *
1392        llgfr   %r4,%r4                 # size_t
1393        llgtr   %r5,%r5                 # unsigned int *
1394        llgtr   %r6,%r6                 # const struct compat_timespec *
1395        jg      compat_sys_mq_timedreceive
1396
1397        .globl  compat_sys_mq_notify_wrapper
1398compat_sys_mq_notify_wrapper:
1399        lgfr    %r2,%r2                 # mqd_t
1400        llgtr   %r3,%r3                 # struct compat_sigevent *
1401        jg      compat_sys_mq_notify
1402
1403        .globl  compat_sys_mq_getsetattr_wrapper
1404compat_sys_mq_getsetattr_wrapper:
1405        lgfr    %r2,%r2                 # mqd_t
1406        llgtr   %r3,%r3                 # struct compat_mq_attr *
1407        llgtr   %r4,%r4                 # struct compat_mq_attr *
1408        jg      compat_sys_mq_getsetattr
1409
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.