aboutsummaryrefslogtreecommitdiffstats
path: root/lib/compiler/test/compilation_SUITE_data/beam_compiler_6.erl
diff options
context:
space:
mode:
authorErlang/OTP <[email protected]>2009-11-20 14:54:40 +0000
committerErlang/OTP <[email protected]>2009-11-20 14:54:40 +0000
commit84adefa331c4159d432d22840663c38f155cd4c1 (patch)
treebff9a9c66adda4df2106dfd0e5c053ab182a12bd /lib/compiler/test/compilation_SUITE_data/beam_compiler_6.erl
downloadotp-84adefa331c4159d432d22840663c38f155cd4c1.tar.gz
otp-84adefa331c4159d432d22840663c38f155cd4c1.tar.bz2
otp-84adefa331c4159d432d22840663c38f155cd4c1.zip
The R13B03 release.OTP_R13B03
Diffstat (limited to 'lib/compiler/test/compilation_SUITE_data/beam_compiler_6.erl')
-rw-r--r--lib/compiler/test/compilation_SUITE_data/beam_compiler_6.erl153
1 files changed, 153 insertions, 0 deletions
diff --git a/lib/compiler/test/compilation_SUITE_data/beam_compiler_6.erl b/lib/compiler/test/compilation_SUITE_data/beam_compiler_6.erl
new file mode 100644
index 0000000000..f263fd75b2
--- /dev/null
+++ b/lib/compiler/test/compilation_SUITE_data/beam_compiler_6.erl
@@ -0,0 +1,153 @@
+%%
+%% %CopyrightBegin%
+%%
+%% Copyright Ericsson AB 1997-2009. All Rights Reserved.
+%%
+%% The contents of this file are subject to the Erlang Public License,
+%% Version 1.1, (the "License"); you may not use this file except in
+%% compliance with the License. You should have received a copy of the
+%% Erlang Public License along with this software. If not, it can be
+%% retrieved online at http://www.erlang.org/.
+%%
+%% Software distributed under the License is distributed on an "AS IS"
+%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+%% the License for the specific language governing rights and limitations
+%% under the License.
+%%
+%% %CopyrightEnd%
+%%
+-module(beam_compiler_6).
+-export([beam_compiler_6/0]).
+
+%% From Ulf Wiger, modified by Bjorn Gustavsson to provoke the
+%% same error with partly corrected compiler in P3A.
+
+beam_compiler_6() ->
+ ok.
+
+selected_alarm(_Env, Parameters) ->
+ UnWebParam = x,
+ [Time, Severity, Info, Cause,
+ Type, Sender, Name, FaultId] = bar:foo(),
+
+ %% Each branch of the case needs two words of heap,
+ %% but the test heap generated before the call to bar:foo(),
+ %% will be merged to the testHeap of each branch, summed and
+ %% moved before the branch. And the number of words to allocate
+ %% will be ridiculously big (> 65535) and will not fit in a
+ %% 16 bit word.
+
+ SenderLink =
+ case Name of
+ "pchScheduledConnectionAlarm" ->
+ [Sender];
+ "pchVpVcAlarm" ->
+ [Sender];
+ "pchSystemMemoryAlarm" ->
+ [Sender];
+ "uniProtocolRestartFailureAlarm" ->
+ [Sender];
+ "spvcScheduledConnectionAlarm" ->
+ [Sender];
+ "eqmSwitchCoreInterfaceAlarm" ->
+ [Sender];
+ "atmPhysicalLayerAlarm" ->
+ [Sender];
+ "atmBufferCongestionAlarm" ->
+ [Sender];
+ "sdhLinkAlarm" ->
+ [Sender];
+ "sdhFarEndAlarm" ->
+ [Sender];
+ "sdhUpperQosAlarm" ->
+ [Sender];
+ "sdhLowerQosAlarm" ->
+ [Sender];
+ "eqmSwitchCoreAlarm" ->
+ [Sender];
+ "eqmEtAlarm" ->
+ [Sender];
+ "eqmHwIdentityFaultAlarm" ->
+ [Sender];
+ "eqmOperatorBlockedEquipmentAlarm" ->
+ [Sender];
+ "pdh34PathAlarm" ->
+ [Sender];
+ "pdh34ObservationAlarm" ->
+ [Sender];
+ "pdh34UpperQosAlarm" ->
+ [Sender];
+ "pdh34LowerQosAlarm" ->
+ [Sender];
+ "nsySynchRefAlarm" ->
+ [Sender];
+ "nsySynchRefBlockedAlarm" ->
+ [Sender];
+ "nsySynchNodeHoldoverAlarm" ->
+ [Sender];
+ "nsySynchNodeNotWorkingAlarm" ->
+ [Sender];
+ "eqmAtbAlarm" ->
+ [Sender];
+ "eqmCbEtAlarm" ->
+ [Sender];
+ "eqmCpAlarm" ->
+ [Sender];
+ "eqmCpInterfaceAlarm" ->
+ [Sender];
+ "eqmCbClkAlarm" ->
+ [Sender];
+ "eqmCbClkInterfaceAlarm" ->
+ [Sender];
+ "eqmCbClkVelocityAlarm" ->
+ [Sender];
+ "eqmCbClkPhaseDiffAlarm" ->
+ [Sender];
+ "eqmHwNotFoundAlarm" ->
+ [Sender];
+ "eqmPduAlarm" ->
+ [Sender];
+ "eqmFanAlarm" ->
+ [Sender];
+ "eqmLocAlarm" ->
+ [Sender];
+ "eqmCustomerDefined1Alarm" ->
+ [Sender];
+ "eqmCustomerDefined2Alarm" ->
+ [Sender];
+ "eqmCustomerDefined3Alarm" ->
+ [Sender];
+ "eqmCustomerDefined4Alarm" ->
+ [Sender];
+ "eqmOperatorBlockedLinkAlarm" ->
+ [Sender];
+ "eqmPowerFilterAlarm" ->
+ [Sender];
+ "eqmCbAbrAlarm" ->
+ [Sender];
+ "eqmAlarmCutOffAlarm" ->
+ [Sender];
+ OtherAlarm ->
+ [Sender]
+ end,
+
+ %% The testHeap instruction generated here will move up to before
+ %% the case.
+
+ bar:foo("<TABLE>
+ <TR><TD ALIGN=LEFT>Fault id:
+ <TD>" ++ FaultId ++ "
+ <TR><TD ALIGN=LEFT>Name:
+ <TD>" ++ Name ++ "
+ <TR><TD ALIGN=LEFT>Sender:
+ <TD>" ++ SenderLink ++ "
+ <TR><TD ALIGN=LEFT>Class:
+ <TD>" ++ Type ++ "
+ <TR><TD ALIGN=LEFT>Cause:
+ <TD>" ++ Cause ++ "
+ <TR><TD ALIGN=LEFT>Severity:
+ <TD>" ++ Severity ++ "
+ <TR><TD ALIGN=LEFT>Information:
+ <TD>" ++ Info ++ "
+ <TR><TD ALIGN=LEFT>Time:
+ <TD>" ++ Time).