lkml.org 
[lkml]   [2003]   [Mar]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH] reduce large stack usage
Hi,

This patch to 2.5.63 reduces stack usage in generate_default_upcase()
from 0x3d4 bytes to just noise (on x86).

The arrays are static so they are still private (hidden), but
now they aren't allocated on the stack and copied there for
temp use.

Please apply.

Thanks,
~Randypatch_name: ntfs_stack_2563.patch
patch_version: 2003-02-28.22:42:57
author: Randy.Dunlap <rddunlap@osdl.org>
description: ntfs: reduce function local stack usage from 0x3d4 bytes to just noise;
product: Linux
product_versions: linux-2563
changelog: _
URL: _
requires: _
conflicts: _
maintainer: Anton Altaparmakov <aia21@cantab.net>
diffstat: =
fs/ntfs/upcase.c | 10 +++++-----
1 files changed, 5 insertions(+), 5 deletions(-)

diff -Naur ./fs/ntfs/upcase.c%NTSTK ./fs/ntfs/upcase.c
--- ./fs/ntfs/upcase.c%NTSTK Mon Feb 24 11:05:05 2003
+++ ./fs/ntfs/upcase.c Fri Feb 28 22:37:32 2003
@@ -26,9 +26,7 @@

#include "ntfs.h"

-uchar_t *generate_default_upcase(void)
-{
- const int uc_run_table[][3] = { /* Start, End, Add */
+static const int uc_run_table[][3] = { /* Start, End, Add */
{0x0061, 0x007B, -32}, {0x0451, 0x045D, -80}, {0x1F70, 0x1F72, 74},
{0x00E0, 0x00F7, -32}, {0x045E, 0x0460, -80}, {0x1F72, 0x1F76, 86},
{0x00F8, 0x00FF, -32}, {0x0561, 0x0587, -48}, {0x1F76, 0x1F78, 100},
@@ -45,7 +43,7 @@
{0}
};

- const int uc_dup_table[][2] = { /* Start, End */
+static const int uc_dup_table[][2] = { /* Start, End */
{0x0100, 0x012F}, {0x01A0, 0x01A6}, {0x03E2, 0x03EF}, {0x04CB, 0x04CC},
{0x0132, 0x0137}, {0x01B3, 0x01B7}, {0x0460, 0x0481}, {0x04D0, 0x04EB},
{0x0139, 0x0149}, {0x01CD, 0x01DD}, {0x0490, 0x04BF}, {0x04EE, 0x04F5},
@@ -55,7 +53,7 @@
{0}
};

- const int uc_word_table[][2] = { /* Offset, Value */
+static const int uc_word_table[][2] = { /* Offset, Value */
{0x00FF, 0x0178}, {0x01AD, 0x01AC}, {0x01F3, 0x01F1}, {0x0269, 0x0196},
{0x0183, 0x0182}, {0x01B0, 0x01AF}, {0x0253, 0x0181}, {0x026F, 0x019C},
{0x0185, 0x0184}, {0x01B9, 0x01B8}, {0x0254, 0x0186}, {0x0272, 0x019D},
@@ -67,6 +65,8 @@
{0}
};

+uchar_t *generate_default_upcase(void)
+{
int i, r;
uchar_t *uc;
\
 
 \ /
  Last update: 2005-03-22 13:33    [W:0.111 / U:0.964 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site